如果一個系統被拆分成多個微服務,那么每個微服務間需要互相通信協作才能作為一個整體對外服務,而系統間的通信協作通常有兩種,Http/RPC通信與訊息通信,
Http/RPC通信的優點是通信實時,不過服務之間的耦合性高,類似使用Fegin組件實作遠程程序呼叫時,由于耦合性較高,為了避免出現服務雪崩的情況,還得引入容錯組件,如Sentinel,Hystrix等,
訊息通信的話,主要就是降低了服務之間的耦合性,提高了系統的處理能力和回應速度,不過通信卻不是實時的了,
Http/RPC通信與訊息通信并不是說二者選其一,完全可以配合使用,對于那些實時性不高的業務鏈路,可以把鏈路上依賴性不強一些業務操作剝離出來,使用訊息通信方式來做通信,加快請求回應速度,而對于那些強耦合的業務,就不能采用訊息通信的方式,得使用Http/RPC通信來保證業務流程的準確性,從而保證資料的一致性,
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/205361.html
標籤:其他
上一篇:python與以太坊智能合約互動
