03.04 談談微服務架構是一個怎樣的存在?


微服務是近些年被廣泛提及的一個概念,微服務架構可以理解為一個輕量級的服務治理方案,也就是將系統的功能,通過服務的形式發佈到服務器上,對服務進行組合調用,實現具體的功能,解決實際業務問題的架構風格。

微服務產生於單體應用的擴大化,隨著信息化不斷髮展,企業對軟件功能的要求越來越具體,也愈發的細緻,如果通過應用程序來實現,必然是一個極其複雜而又痛苦的過程,由此誕生了微服務的概念。就是將功能發佈成服務,應用程序通過調用不同的服務來實現業務,這種設計架構稱之為微服務。

微服務架構的優點在於每個服務可以有獨立的團隊開發,服務之間互不干涉,保障了系統的穩定性。由於功能被拆分到更細的粒度,有效的降低了程序的複雜程度,對硬件的需求也隨之降低,但是微服務也有一些不足,比如服務調用帶來的系統複雜性,服務間的依賴關係也是難以管理的,如何構建合理的服務依賴是考驗架構師能力的重要依據;最後,微服務架構的部署以及跟蹤也是很難的。總之,微服務架構有著自身的應用場景以及特點,瞭解哪些場景適合微服務比掌握微服務的具體技術更為重要,適當的技術用在適當的場景,才能發揮合適的價值。

數通暢聯 專注於企業IT架構、SOA綜合集成、數據治理分析領域,感謝您的閱讀與關注!

數通暢聯


微服務架構是當前最流行的技術架構,主要組件有註冊中心、網關、配置中心和各種微服務模塊。架構靈活、易擴展、可動態擴容。

在微服務之前,系統架構經歷很長時間的演變,簡述如下:

1.無架構

頁面邏輯和業務邏輯混在一起,甚至頁面直接訪問數據庫。

優點:因為沒有太多的訪問路徑轉換,效率是最高的;

缺點:沒有分層,邏輯混亂,維護難,擴展難。

2.MVC

架構

單系統,表現層、邏輯層、業務層分開,各層分工協作。

優點:邏輯清晰、分工明確、易維護。

缺點:系統集中部署,屬於強耦合,某些業務模塊出現異常時,會導致整個系統無法訪問。

3.SOA架構

面向服務的架構,多個系統分佈式部署,通過消息總線進行通訊。

優點:各個系統的業務相對獨立,耦合低;

缺點:消息總線負擔太重,中心化太重,接口缺乏規範。

4.微服務架構

一個系統,按照粒度規劃,劃分為很多的微服務,而每個微服務,對應一個具體的業務實現,並可擁有自己獨立的數據庫,整個就是微服務架構。

優點:如上,架構靈活、易擴展,在實際運營時,按需擴容,集群部署。各個微服務業務互不影響,耦合性低;

缺點:開發成本高,對部署有一定的專業性要求。


從技術而言,微服務已經是一個設計理念很成熟的架構,可滿足不同層次,不同業務場景的需要,而且經過多個版本的迭代,該踩的坑也基本踩完,生態系統完整,開源組件選擇多多,很有一統天下的趨勢,值得嘗試。


但,不要為了微服務而微服務,要根據自己實際的要求去做抉擇和取捨。

比較,適合自己的,才是最好的!


分享到:


相關文章: