分布式系統環境下,服務間類似依賴非常常見,乙個業務呼叫通常依賴多個基礎服務。如下圖,對於同步呼叫,當庫存服務不可用時,商品服務請求執行緒被阻塞,當有大批量請求呼叫庫存服務時,最終可能導致整個商品服務資源耗盡,無法繼續對外提供服務。並且這種不可用可能沿請求呼叫鏈向上傳遞,這種現象被稱為雪崩效應。
綜上所述,如果乙個應用不能對來自依賴的故障進行隔離,那該應用本身就處在被拖垮的風險中。 因此,為了構建穩定、可靠的分布式系統,我們的服務應當具有自我保護能力,當依賴服務不可用時,當前服務啟動自我保護功能,從而避免發生雪崩效應。本文將重點介紹使用hystrix解決同步等待的雪崩問題。
hystrix [hɪst'rɪks],中文含義是豪豬,因其背上長滿棘刺,從而擁有了自我保護的能力。本文所說的hystrix是netflix開源的一款容錯框架,同樣具有自我保護能力。為了實現容錯和自我保護,下面我們看看hystrix如何設計和實現的。
hystrix設計目標:
hystrix遵循的設計原則:
hystrix如何實現這些設計目標?
大資料時代 雲架構
關於大資料的資訊鋪天蓋地而來,讓大家看得眼花繚亂。雖然資訊很精彩,我們也看到了大資料背後的價值,但普遍不知道如何下手。yonghong認為,在乙個企業中,超出現有計算機系統處理能力的資料,就是大資料。作為領軍企業,應本著務實的態度,利用較低的成本,通過對大資料進行高速捕獲和實時的分析,以獲取核心業務...
《大資料時代》閱讀筆記
此筆記包括摘錄和心得,黑色字型為摘錄,紅色字型為心得。1,google 禽流感的案例說明的道理 以一種前所未有的方式,通過對海量資料進行分析,獲得有巨大價值的產品和服務,或深刻的洞見。2,大資料有點類似博弈論,最終結果都是影響使用者的最終判斷。而大資料是理性的,有海量事實資料來支撐,但建模的精準度又...
《架構漫談》閱讀筆記
在每個人都必須自己完成所有生活必須品的生產的時候,是沒有架構的 當然在個人來講,同一時刻只能做有限的事情,在時間上還是可能會產生架構的 一旦產生的分工,就把所有的事情,切分成由不同角色的人來完成,最後再通過交易,使得每個個體都擁有生活必須品,而不需要每個個體做所有的事情,只需要每個個體做好自己擅長的...