輕量級微服務架構 讀書筆記1

2022-03-21 18:34:39 字數 1184 閱讀 7284

1. 為什麼要微服務架構(why)

原因:傳統的應用架構不合理,產生了新的架構模式。

1.1 傳統應用架構的主要問題(problems)

當乙個系統中包含a、b、c三個業務模組,通過監控程式發現a和b累計消耗系統資源的20%,c卻要占用80%時,系統執行一段時間後,c業務將會成為系統的瓶頸,從而降低系統的效能。 

1.2 解決傳統應用架構的問題(solutions)

一般來看,只需要複製同樣乙份程式,並部署到另一台伺服器上,只不過多台伺服器上方通過負載均衡器將應用進行「水平擴充套件」。當請求資源時,先經過負載均衡器,通過路由演算法(如輪詢或雜湊),將請求**到後面的具體應用伺服器上,這種方式也被成為反向**。

1.3 其他問題(others)

2. 什麼是微服務架構(what)

2.1 概念

應用滿足一下要求,具體:

2.2 微服務交付流程

使用微服務架構開發應用,實際上是對乙個個微服務進行設計、開發、測試、部署,每個服務之間沒有彼此依賴。

3. 微服務有哪些特點和挑戰

3.1 特點

3.2 挑戰

4. 如何搭建微服務(how)

4.1 微服務技術選型

使用 spring boot 作為微服務開發框架,其擁有嵌入式 tomcat,可直接執行乙個jar包來發布微服務,在發布微服務是,可連線zookeeper來註冊微服務,實現「服務註冊」。實際上zookeeper中有乙個名為znode的記憶體樹樁模型,樹上的節點用來存放微服務的配置資訊。使用node.js處理瀏覽器傳送的請求,在node.js中連線zookeeper,發現服務配置,實現「服務發現」。通過node.js將請求**到tomcat上,實現「反向**」。此外,node.js原生也提供了集群特性,可確保高可用性。為實現微服務自動化部署,可以通過jenkins搭建自動化部署系統,並使用docker將服務容器化封裝。

1)使用jenkins部署服務

2)使用spring boot 開發服務

3)使用docker封裝服務

4)使用zookeeper註冊服務

5)使用node.js呼叫服務

spring官方在spring boot的基礎上,封裝了netflix相關元件,提供乙個名為spring cloud 的開源專案。

《微服務架構與實踐》讀書筆記

這本書主要回答了關於微服務的三個問題 微服務怎麼來的,微服務是什麼樣的,微服務怎麼做的。第一部分介紹了單體架構和微服務架構的區別,單體架構易於開發 測試 部署 水平擴充套件,微服務架構優勢在於易於擴充套件 持續交付部署能力 程序隔離有效提公升魯棒性 對新人的培養成本更低,同時它也帶來了降低系統的效能...

微服務設計讀書筆記

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

《微服務設計》讀書筆記

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