今天學習的是《彈力設計篇之“異步通訊設計”》,收獲如下。
異步通訊主要是為了解除服務、系統(tǒng)間的耦合,更好地隔離各個服務,避免一有故障就影響一大片。
異步還可以獲得更大吞吐量,以及將吞吐量削峰平谷。
服務可以相對獨立,不受其他服務的干擾,部署也可以獨立。
異步架構設計的注意事項。
中間件Broker必須是高可用不丟消息的,系統(tǒng)最好不依賴消息的順序。
異步通訊導致業(yè)務處理不那么直觀,需要有機制可以追蹤,以便問題排查。
業(yè)務狀態(tài)最好有總控,在出現(xiàn)問題時知道問題在哪一步。常見于銀行的對賬程序,確保數(shù)據(jù)是對的。