什麼是微服務

2021-09-10 02:08:08 字數 944 閱讀 5830

單體應用

業務通常是通過部署乙個 war 包到 tomcat 中,然後啟動 tomcat,監聽某個埠即可對外提供服務。

單體應用優點:

方便除錯,**都在一起;

沒有分布式開銷,所有服務都在本地容器內;

中小型專案可以快速迭代,不需要太多資源

單體應用容易造成的問題:

版本管理難:當專案規模變大時,**容易產生衝突。

穩定性差:區域性服務有問題,可能會影響整體;

可維護性差:規模擴大複雜性直線上公升,造成系統不易理解;

可擴充套件性差:無法滿足高併發下對應用的要求,不利於較高利用率的橫向擴充套件;

可復用性差:服務被打包在應用中,功能不易復用;

靈活性差:服務不容易靈活調配、公升降級等。

服務化

用通俗的話來講,服務化就是把傳統的單機應用中通過 jar 包依賴產生的本地方法呼叫,改造成通過 rpc 介面產生的遠端方法呼叫

1. 優點

易於開發和維護:乙個微服務只會關注乙個特定的業務功能,所以業務清晰、**量較少。開發和維護單個微服務相對簡單。

單個微服務啟動較快

區域性修改容易部署:單體應用只要有修改,就得重新部署整個應用。微服務解決了這樣的問題。一般來說,對某個微服務進行修改,只需要重新部署這個服務即可。

技術棧不受限制:在微服務架構中,可以結合專案業務及團隊的特點,合理的選擇技術棧。

按需伸縮:可根據需求,實現細粒度的擴充套件。

2. 缺點

運維要求高:更多的服務意味著要投入更多的運維。

分布式固有的複雜性:使用微服務構建的是分布式系統。對於乙個分布式系統,系統容錯、網路延遲、分布式事務等都會帶來巨大的問題。

介面調整成本高:微服務之間通過介面進行通訊。如果修改某乙個微服務的api,可能所有用到這個介面的微服務都需要進行調整。

什麼是微服務,微服務簡介

目錄 微服務今天簡單了解一下微服務,在看微服務前,先了解一下傳統的單機系統。所有的業務子模組都集中在乙個系統中,優點是便於管理,但是規模變大的時候,缺點就很明顯了。缺點 當產品規模越來越大,各種的大大小小模組都塞在乙個專案中,必然會使整個專案變的臃腫,讓開發者難以維護。系統的各個功能模組都依賴於同樣...

什麼是微服務

這麼多的服務使用者要怎麼連線。解決 通過api閘道器管理伺服器,使用者只需要通過連線api閘道器就可以了。這麼多的伺服器該如何通訊。解決 同步通訊 非同步通訊 訊息佇列 kafka,rabbitmq,rocketmq 這麼多的服務該如何管理。解決 服務註冊與發現 基於客戶端的服務註冊與發現 apac...

什麼是微服務

微服務一名出自 james lewis martin fowler 2014年3月25日寫 microservices 乙個比較完整的springcloud 全家桶 demo 微服務幾個特點 微服務是一種架構風格,沒有強制性和絕度標準答案 架構演進歷史 架構演進.png 單體架構.png 單體架構缺...