在分布式系統(tǒng)的架構(gòu)設(shè)計(jì)中,RPC(Remote Procedure Call,遠(yuǎn)程過(guò)程調(diào)用)和HTTP調(diào)用是兩種最常見的跨服務(wù)通信方式。雖然它們都能實(shí)現(xiàn)不同系統(tǒng)之間的信息交互,但在設(shè)計(jì)理念、性能表現(xiàn)、適用場(chǎng)景等方面存在著本質(zhì)的差異。很多開發(fā)者在面對(duì)架構(gòu)選型時(shí),常常會(huì)在這兩種方式之間猶豫不決。深入理解它們的核心區(qū)別,是做出正確架構(gòu)決策的關(guān)鍵。
很長(zhǎng)時(shí)間以來(lái)都沒(méi)有怎么好好搞清楚RPC(即Remote Procedure Call,遠(yuǎn)程過(guò)程調(diào)用)和HTTP調(diào)用的區(qū)別,不都是寫一個(gè)服務(wù)然后在客戶端調(diào)用么?