微服務和分佈式區別

微服務是架構設計方式,分佈式是系統部署方式。

在這裏插入圖片描述
在這裏插入圖片描述

微服務是什麼

簡單來說微服務就是很小的服務,小到一個服務只對應一個單一的功能,只做一件事。這個服務可以單獨部署運行,服務之間可以通過RPC來相互交互,每個微服務都是由獨立的小團隊開發,測試,部署,上線,負責它的整個生命週期。

微服務架構是什麼

在做架構設計的時候,先做邏輯架構,再做物理架構,當你拿到需求後,估算過最大用戶量和併發量後,計算單個應用服務器能否滿足需求,如果用戶量只有幾百人的小應用,單體應用就能搞定,即所有應用部署在一個應用服務器裏,如果是很大用戶量,且某些功能會被頻繁訪問,或者某些功能計算量很大,建議將應用拆解爲多個子系統,各自負責各自功能,這就是微服務架構。

在這裏插入圖片描述

分佈式是什麼

分佈式服務顧名思義服務是分散部署在不同的機器上的,一個服務可能負責幾個功能,是一種面向SOA架構的,服務之間也是通過rpc來交互或者是webservice來交互的。邏輯架構設計完後就該做物理架構設計,系統應用部署在超過一臺服務器或虛擬機上,且各分開部署的部分彼此通過各種通訊協議交互信息,就可算作分佈式部署,生產環境下的微服務肯定是分佈式部署的,分佈式部署的應用不一定是微服務架構的,比如集羣部署,它是把相同應用複製到不同服務器上,但是邏輯功能上還是單體應用。

對比

微服務相比分佈式服務來說,它的粒度更小,服務之間耦合度更低,由於每個微服務都由獨立的小團隊負責,因此它敏捷性更高,分佈式服務最後都會向微服務架構演化,這是一種趨勢, 不過服務微服務化後帶來的挑戰也是顯而易見的,例如服務粒度小,數量大,後期運維將會很難

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章