refactor(peer_server): move stats construction to factories
parent
7bd4d05a38
commit
86718167e8
|
@ -75,23 +75,11 @@ type snapshotConf struct {
|
||||||
func NewPeerServer(psConfig PeerServerConfig, tlsConf *TLSConfig, tlsInfo *TLSInfo, registry *Registry, store store.Store, mb *metrics.Bucket) *PeerServer {
|
func NewPeerServer(psConfig PeerServerConfig, tlsConf *TLSConfig, tlsInfo *TLSInfo, registry *Registry, store store.Store, mb *metrics.Bucket) *PeerServer {
|
||||||
s := &PeerServer{
|
s := &PeerServer{
|
||||||
Config: psConfig,
|
Config: psConfig,
|
||||||
|
|
||||||
registry: registry,
|
registry: registry,
|
||||||
store: store,
|
store: store,
|
||||||
followersStats: &raftFollowersStats{
|
|
||||||
Leader: psConfig.Name,
|
followersStats: newRaftFollowersStats(psConfig.Name),
|
||||||
Followers: make(map[string]*raftFollowerStats),
|
serverStats: newRaftServerStats(psConfig.Name),
|
||||||
},
|
|
||||||
serverStats: &raftServerStats{
|
|
||||||
Name: psConfig.Name,
|
|
||||||
StartTime: time.Now(),
|
|
||||||
sendRateQueue: &statsQueue{
|
|
||||||
back: -1,
|
|
||||||
},
|
|
||||||
recvRateQueue: &statsQueue{
|
|
||||||
back: -1,
|
|
||||||
},
|
|
||||||
},
|
|
||||||
|
|
||||||
timeoutThresholdChan: make(chan interface{}, 1),
|
timeoutThresholdChan: make(chan interface{}, 1),
|
||||||
|
|
||||||
|
|
|
@ -10,6 +10,13 @@ type raftFollowersStats struct {
|
||||||
Followers map[string]*raftFollowerStats `json:"followers"`
|
Followers map[string]*raftFollowerStats `json:"followers"`
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func newRaftFollowersStats(name string) *raftFollowersStats {
|
||||||
|
return &raftFollowersStats{
|
||||||
|
Leader: name,
|
||||||
|
Followers: make(map[string]*raftFollowerStats),
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
type raftFollowerStats struct {
|
type raftFollowerStats struct {
|
||||||
Latency struct {
|
Latency struct {
|
||||||
Current float64 `json:"current"`
|
Current float64 `json:"current"`
|
||||||
|
|
|
@ -29,6 +29,19 @@ type raftServerStats struct {
|
||||||
recvRateQueue *statsQueue
|
recvRateQueue *statsQueue
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func newRaftServerStats(name string) *raftServerStats {
|
||||||
|
return &raftServerStats{
|
||||||
|
Name: name,
|
||||||
|
StartTime: time.Now(),
|
||||||
|
sendRateQueue: &statsQueue{
|
||||||
|
back: -1,
|
||||||
|
},
|
||||||
|
recvRateQueue: &statsQueue{
|
||||||
|
back: -1,
|
||||||
|
},
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
func (ss *raftServerStats) RecvAppendReq(leaderName string, pkgSize int) {
|
func (ss *raftServerStats) RecvAppendReq(leaderName string, pkgSize int) {
|
||||||
ss.State = raft.Follower
|
ss.State = raft.Follower
|
||||||
if leaderName != ss.LeaderInfo.Name {
|
if leaderName != ss.LeaderInfo.Name {
|
||||||
|
|
Loading…
Reference in New Issue