微服務設計 讀書筆記(一)

2022-09-12 03:57:10 字數 757 閱讀 8538

微服務就是一些協同工作的小而自治的服務。

微服務將單一職責原則應用到了獨立的服務上,根據業務範圍來確定服務的邊界,乙個服務專注於乙個業務範圍,避免**庫過大。一般來講,乙個微服務應該在兩周之內可以完全重構,但不能盲目追求小,乙個微服務的業務範圍越小,獨立性帶來的好處就越多,整個系統所需管理的服務就越多。

在微服務的系統中,每乙個微服務都可以使用全新的技術來開發,因此每個微服務都可以選擇最適合自己業務的語言,資料庫來開發,不受其他模組的限制。比如文章模組更加適合採用文件資料庫,而對於處理好友之間的關係,採用圖資料庫也許更加合適。

在單體應用程式中,如果服務發生故障,那麼會導致所有功能不可用,單體應用程式中為了避免這種情況,通常將同乙個應用部署到不同的伺服器上。而微服務天生就有這種處理服務降級和服務,雖然微服務有很好的彈性,但是還是要謹慎對待,分布式系統中網路和機器所引發的問題。

龐大的單體應用只能作為乙個整體來擴充套件,哪怕只有一小部分存在效能問題,也需要對整個系統進行擴充套件。如果使用微服務,則可以只對需要擴充套件的服務進行擴充套件,把不常用的服務執行在較小,效能較差的硬體上。

在單體應用中即使只修改了一行**,也需要重新部署整個應用。這種部署的影響很大,風險很大,因此相關負責人不敢輕易進行發布。於是部署的頻率就低了很多,但兩次發布之間差距越大,出現問題的可能性就越大。

微服務架構可以很好地將架構與組織結構相匹配,避免出現過大的**庫。從而獲得理想的團隊大小及生產力。

想要重構單體應用的成本是高昂的,想要刪除某個模組有可能引發其他問題,而在微服務中,想要重構或移除乙個微服務,所面臨的阻礙也很小。

微服務設計 讀書筆記 一

1.1 什麼是微服務 微服務就是一些協同工作的小而自治的服務。1.1.1 專注於做好一件事 隨著新功能的增加,庫會越變越大。時間久了 庫會非常龐大,以至於想要知道該在什麼地方做修改都很困難。在乙個單塊系統內,通常會建立一些抽象層或者模組來保證 的內聚性,從而避免上述問題。內聚性是將相關 放在一起,在...

微服務設計讀書筆記

微服務架構的優勢 1 較小的粒度 2 在解決問題的方法上能夠給予更多的選擇 相比動態庫更新,相關的依賴都要更新是乙個很大的優點。3 微服務定義為可以在2周之內改寫乙個服務,這種粒度的頻繁更新引入風險的可能性較單一系統有較大的改善 微服務設計 沒有明確邊界的時候,可以設定的粒度比較大,當服務內部的邊界...

《微服務設計》讀書筆記

待做的 學習框架 nameko double spring cloud 書 微服務的定義 一些協同工作的小而自治的服務 微服務的核心思想 1.自治 2 作為服務方,需要避免方暴露過多給消費而產生耦合,從而降低服務的自治性。要封裝好,服務方內部實現修改,不該影響到消費方。2.細粒度 1 解耦 避免系統...