天天看點

MVC RPC SOA 和微服務架構的差別

MVC RPC SOA 微服務架構的差別

MVC RPC SOA 和微服務架構的差別

單體架構

MVC(Model View Controller)

M是指業務模型,V是指使用者界面,C則是控制器,使用MVC的目的是将M和V的實作代碼分離,進而使同一個程式可以使用不同的表現形式。C存在的目的則是確定M和V的同步,一旦M改變,V應該同步更新。

多服務架構:

1.RPC(Remote Procedure Call)遠端過程調用

一種通過網絡從遠端計算機程式上請求服務,而不需要了解底層架構,代表技術有:Thrift(用來進行可擴充且跨語言的服務的開發),Hessian(基于http協定的RPC架構),不适用于服務過多的場景

2.SOA(Service Oriented Architecture)面向服務架構

相比于RPC,SOA多了ESB(Enterparise Serivice Bus)企業服務總線,提供服務之間的互動,包含負載均衡,流量控制,加密處理,服務的監控,異常處理,監控告急等。ESB的代表技術有Mule(以java為核心的消息ESB付費),WSO2(開源,輕量級且功能豐富)

3.微服務架構(輕量級的服務治理方案)

相比于SOA,微服務更加輕量,代表技術:dubbo SpringCloud

注冊中心是企業服務總線的一個輕量級的替代方案,代表的注冊中心有zookeeper,eureka

繼續閱讀