微服務架構十條最佳實踐
確保你在分散式系統中,努力實現這些微服務的最佳實踐,例如監控和REST成熟度。
使用微服務架構可以解決所有的軟體架構的問題,對嗎?當然,這是不對的。但是,使用微服務架構是有價值的。
Hüseyin Babal 最近發表了一個觀點,即微服務架構是無法解決所有的問題的。但是,使用微服務架構是構建現代軟體架構的堅實基礎。在過去的許多年裡,我們都知道維護單體應用而帶來的挑戰,所以 我們尋找一個新的選擇來實現可持續,可擴充套件,易於整合的軟體架構。以最佳實踐為基礎來實現微服務架構可以大幅度的改善你的軟體架構。
Hüseyin 是aurea的首席軟體架構師和Kloia的諮詢師。他最近的演講,微服務架構終極指南涵蓋了他每天工作的大部分的經驗和展現了實現微服務架構的最佳實踐。
在他的演講中,它使用Spring Boot來進行應用開發,Consul作為服務發現,Elasticsearrch 和Kibana作為監控,Docker和Jenkins作為持續交付。演講中包含了十條最佳實踐的程式碼示例演示。
最佳實踐1 — 嘗試達到真正的REST
在意識到REST API的好處之後,我們可以檢視上圖的Leonard Richardson`s 的成熟度模型,對於REST的使用有四個級別的定義。
級別0:使用一個端點來訪問軟體資源
級別1:使用相同的http方法來訪問不同的資源
級別2:使用不用的http方法(例如 GET POST PUT DELETE)來訪問不同的資源
級別3:API響應中擁有導航資源,這是真正的REST。
最佳實踐2 — 使用Spring HATEOAS
這個可以幫助你使用可導航的RESTful api介面。
最佳實踐3 — 使用分散式配置
通過這種方式,你不能一次性配置50不同的配置。Consul可以用來保持鍵/值的配置。
最佳實踐4 — 客戶程式碼生成
Hüseyin 建議“要麼使用Swagger來生成任何支援的語言的客戶端程式碼,要麼通過註解來使用Feign客戶端,以及使用Ribbon進行客戶端的負載均衡”。
最佳實踐5 — 持續交付
Hüseyin 使用Docker和Jenkins進行了持續交付的示例演示。
最佳實踐6 — 監控
事實上,監控無處不在。
最佳實踐7 — 日誌
Hüseyin 指出大量的Docker 日誌驅動。他通過使用GELF(Graylog Extended Log Format)來進行示例演示.
最佳實踐8 — APM
應用效能管理。APM通過蒐集額外的詳細資訊來幫助你解決問題。Hüseyin 表示Zipkin是一個開源產品中的一個可選方案。
最佳實踐9 — 資料聚合到特定的客戶端的API閘道器
最佳實踐10 — 事件訂閱和CQRS(命令和查詢響應分離)
一個命令可以改變一個物件的狀態,但是不會返回資料。一個查詢會返回資料,但是不會更改物件的狀態。
你可以點選這裡看到Hüseyin’s 全部的演講。他為每一個最佳實踐都提供了示例程式碼和解決方案的演示。
歡迎工作一到五年的Java程式設計師朋友們加入Java架構開發:744677563
本群提供免費的學習指導 架構資料 以及免費的解答
不懂得問題都可以在本群提出來 之後還會有職業生涯規劃以及面試指導
相關文章
- 微服務架構最佳實踐微服務架構
- 華為雲:微服務架構下的效能保障最佳實踐微服務架構
- 保護你微服務架構安全的三個最佳實踐微服務架構
- vivo 海量微服務架構最新實踐微服務架構
- Apache Airflow十條最佳實踐ApacheAI
- Kubernetes 微服務最佳實踐微服務
- 微服務架構知識及工程實踐微服務架構
- [雲原生微服務架構](十)微服務架構的基礎知識微服務架構
- 簡單實現微服務架構的實踐分享微服務架構
- 個推微服務閘道器架構實踐微服務架構
- 面向微服務架構設計理念與實踐微服務架構
- .NET微服務最佳實踐 eShopOnContainers微服務AI
- spring微服務架構設計與輕量級微服務架構及最佳部署Spring微服務架構
- 網頁上的微服務—微前端架構實踐網頁微服務前端架構
- 教你玩轉微服務--基於DDD的微服務架構落地實踐之路微服務架構
- 設計微服務的最佳實踐微服務
- SpringBoot微服務安全最佳實踐 - piotrminkowskiSpring Boot微服務
- SpringCloud 微服務最佳開發實踐SpringGCCloud微服務
- 一個知名網站的微服務架構最佳實現網站微服務架構
- 如何設計最佳的微服務架構 -DZone微服務架構
- 微服務架構中,二次淺封裝實踐微服務架構封裝
- 今日頭條 Flutter 架構實踐Flutter架構
- 有效的微服務:10 個最佳實踐微服務
- 同程旅遊微服務最佳實踐微服務
- 微服務快取原理與最佳實踐微服務快取
- 趣頭條-誠招微服務架構/業務架構/中介軟體架構/演算法微服務架構演算法
- 羅輯思維首席架構師:Go微服務改造實踐架構Go微服務
- 微服務2:微服務全景架構微服務架構
- 測試微服務的4個最佳實踐微服務
- 微服務的【資料庫管理】最佳實踐微服務資料庫
- 【架構與設計】常見微服務分層架構的區別和落地實踐架構微服務
- 愛奇藝在 Dubbo 生態下的微服務架構實踐微服務架構
- 微服務與領域驅動設計,架構實踐總結微服務架構
- 微服務架構:構建PHP微服務生態微服務架構PHP
- 微服務架構初探微服務架構
- 微服務 dubbospring 架構微服務Spring架構
- SpringCloud微服務架構開發實戰SpringGCCloud微服務架構
- Ocelot+Consul實現微服務架構微服務架構