while (接收到包 ?) is (接收到包)
if (包的優先順序 > 自身優先順序 ?) then(包的優先順序高)
if (自己狀態是主 ?) then (自身是master)
:自身狀態從master從切換成backup;
:自身停止傳送vrrp包;
else (非master)
:保持自身狀態,不做處理;
endif
else if (包的優先順序 < 自身優先順序 ?) then (包優先順序小)
:ignore;
else (包的優先順序相等)
if (發包主機ip > 本機ip ?) then(發包ip高)
if (自己狀態是主 ?) then (自身是master)
:自身狀態從master從切換成backup;
:自身停止傳送vrrp包;
else (自身是backup)
:保持自身狀態,不做處理;
endif
else (發包ip低)
:ignore;
endif
endif
endwhile (未接收到包)
if (自身是backup ?) then (backup)
if (未收到包的時間 > t1) then (> t1)
:將自身狀態置為master;
else (<= t1)
:ignore;
endif
else (master)
:ignore;
endif
detach
fork again
if (自身是master ?) then (是master)
:傳送vrrp包;
else (不是master)
:ignore;
endif
detach
fork again
if (檢查指令碼返回值為0 ?) then (檢查指令碼執行成功)
if (自身是master ?) then (master)
:ignore;
elseif (自身是fault ?) then (fault)
:自身狀態改為backup;
else (backup)
:自身狀態為backup;
endif
detach
else (檢查指令碼執行失敗)
if (自身是master ?) then (master)
:自身狀態改為fault;
:傳送優先順序為0的通告;
elseif (自身是fault ?) then (fault)
:自身狀態為fault;
else (backup)
:自身狀態改為fault;
endif
endif
detach
endfork
end@enduml
keepalived VRRP同步組配置
keepalived配置分3類 全域性配置 vrrpd配置和lvs配置。vrrpd配置又分vrrp同步組配置和vrrp例項配置 lvs配置由resl server段和健康檢測段組成 vrrp同步組配置 vrrp sync group g1 notify backup usr local bin vr...
高併發 高可用
高併發 提高系統併發能力的方法主要有兩種 前者垂直擴充套件可以通過提公升單機硬體效能,或者提公升單機架構效能,來提高併發性,但單機效能總是有極限的,網際網路分布式架構設計高併發終極解決方案還是後者 水平擴充套件。網際網路分層架構中,各層次水平擴充套件的實踐又有所不同 1 反向 層可以通過 dns輪詢...
高併發與高可用
事發事中 事後高併發 增加處理人手 事前 副本 隔離 配額 提前預案 探知 事發 監控 報警 事中 降級 回滾 應急預案,fail 系列 事後 覆盤 思考 技改 fail 系列 當出現下游呼叫失敗時,我們一般有幾種處理方式 failretry,即失敗重試,需要配合退避時間,否則馬上重試不一定會有效果...