mirror of
https://github.com/TeaOSLab/EdgeNode.git
synced 2025-12-29 17:26:34 +08:00
修复一个源站主备切换不灵敏的问题/WebSocket也支持源站主备自动切换
This commit is contained in:
@@ -45,6 +45,8 @@ func NewOriginStateManager() *OriginStateManager {
|
||||
// Start 启动
|
||||
func (this *OriginStateManager) Start() {
|
||||
events.OnKey(events.EventReload, this, func() {
|
||||
// TODO 检查源站是否有变化
|
||||
|
||||
this.locker.Lock()
|
||||
this.stateMap = map[int64]*OriginState{}
|
||||
this.locker.Unlock()
|
||||
@@ -143,7 +145,7 @@ func (this *OriginStateManager) Fail(origin *serverconfigs.OriginConfig, reverse
|
||||
state.UpdatedAt = timestamp
|
||||
|
||||
if origin.IsOk {
|
||||
origin.IsOk = state.CountFails > 5 // 超过 N 次之后认为是异常
|
||||
origin.IsOk = state.CountFails < 5 // 超过 N 次之后认为是异常
|
||||
|
||||
if !origin.IsOk {
|
||||
if callback != nil {
|
||||
|
||||
Reference in New Issue
Block a user