原创 分佈式系統關注點——“無狀態”詳解

本文中我們開始聊一些讓系統更簡單,更容易維護的東西——“易伸縮”,首當其衝的第一篇文章就是“stateless”,也叫“無狀態”。 一、初識“狀態” 我們首先舉個例子。   開發Z哥對運維Y弟喊:“Y弟,現在系統好卡,剛上了一波活動,趕緊幫

原创 99%的人都能看懂的「補償」以及最佳實踐

也許你對降級已經有了一些認識,這次,我們來聊一聊在保證對外高可用的同時,憋出的“內傷”該如何通過「補償」機制來自行消化。 「補償」機制的意義 以電商的購物場景爲例: 客戶端 ---->購物車微服務 ---->訂單微服務 ----> 支付微服

原创 讓你的系統“堅挺不倒”的最後一個大招——「降級」

也許你對降級已經有了一些認識,認真看完,我想這篇文章可能會給你帶來一些新的收穫~ 前面兩篇我們已經聊過了「熔斷」(如何在到處是“雷”的系統中「明哲保身」?這是第一招)和「限流」(想通關「限流」?只要這一篇),這次我們聊的就是「高可用三劍客」

原创 分佈式系統關注點——限流該怎麼做?

在上一篇中我們聊到了「熔斷」(分佈式系統關注點——99%的人都能看懂的「熔斷」以及最佳實踐),有熔斷機制的系統,它對可用性的作用至少保證了不會全盤崩潰。 但是你可以想象一個稍微極端一點的場景,如果系統流量不是很穩定,導致頻繁觸發熔斷的話,是

原创 分佈式系統關注點:99%人看得懂的“熔斷”以及最佳實踐

當我們工作所在的系統處於分佈式系統初期的時候,往往這時候每個服務都只部署了一個節點。   那麼在這樣的背景下,如果某個服務A需要發佈一個新版本,往往會對正在運行的其它依賴服務A的程序產生影響。甚至,一旦服務A的啓動預熱過程耗時過長,問題會更