分佈式系統穩定性模式

本篇文章主要介紹了"分佈式系統穩定性模式",主要涉及到分佈式系統穩定性模式方面的內容,對於分佈式系統穩定性模式感興趣的同窗能夠參考一下。緩存

對集羣大訪問量的應用頗有針對性的一些注意點。服務器

1.隔離。 發生問題,能控制在一個小的範圍。 物理隔離/虛擬(容器,實例,VM)隔離/流控異步

2.內存溢出。 代碼細節,數據量,進程數控制。jsp

3.預估數量,閥值控制。 遠程獲取的變量需謹慎處理分佈式

4.超時 QPS = 1000ms / rt(timeOutAvg) * threadCount *QPS越高,線程越少,越完美。 超時時間設定需合理線程

5.流控 比超時更友好,有自我恢復能力調試

6.異步調用 減小響應時間,在客戶端作異步調用日誌

7.限流 限制請求數,Web服務器攔截,以QPS爲準xml

8.降級 對弱依賴有效/最好能作到自動降級,自動恢復接口

9.開關 手動降級,關閉服務,臨時可能會忽略。需有專人負責

10.熱點緩存 容易被攻擊,策略:將被攻擊的或者不存在的數據放入Cache,不查詢DB。

11.緩存容災 多份緩存,而且有對應DB的整套緩存,能獨立成爲數據源

12.依賴Jar包衝突 二方包間接依賴衝突檢測,mvn:dependency:tree

13.內部調用優先 路由,同機房優先調用DB,Cache。

14.依賴診斷和調試 接口調試(在線),一些小腳本,jsp能迅速模擬調用

15.日誌跟蹤 traceId ? 全部調用應用打日誌,以traceId爲Key能查詢出完整請求調用日誌記錄。 缺點是可是日誌量會很大

16.依賴識別 強依賴/弱依賴/依賴系統,調用接口的統計管理。能查出系統的瓶頸。

17.依賴簡化 合併依賴,異步化依賴。

18.發佈規範 daily/prepub/beta

19.服務治理 Admin系統 XXAdmin 白名單,黑名單之類的管理等

20.容量規劃 物理服務器備機準備

21.預演 模擬正式環境處理問題,能暴露不少問題,幫助很大

22.告警 短信等,及時處理線上問題

23.資源調度 優先級資源劃分,想法比較好,但比較難作到

相關文章
相關標籤/搜索