【springcloud alibaba】配置中心之nacos
接著上一篇的【springcloud alibaba】註冊中心之nacos,這一篇主要講nacos的配置中心能力。nacos的叢集部署及持久化請看上一篇。
--------------------------------------------------目錄-----------------------------------------------
2.2 微服務配置中心
5.如何技術選型
--------------------------------------正文 -----------------------------------------------
1.微服務配置中心是什麼
「配置中心」,顧名思義,就是用來統一管理微服務專案中所有配置的系統。一個規範和成熟網際網路研發團隊,微服務專案中多般使用到配置中心。
2.微服務為什麼配置中心
2.1 傳統專案中的配置處理,一般可能存在的問題
2.1.1 靜態化配置。這種做法雖然簡單,但如果引數需要修改,就非常的不靈活,甚至需要重啟執行中的專案才能生效。
2.1.2 配置檔案無法區分環境。(springboot專案profile支援環境區分)
2.1.3 配置檔案過於分散。如果一個專案中存在多個邏輯模組獨立部署,每個模組所使用的配置內容又不相同,傳統的做法是會在每一個模組中都放一個配置檔案,甚至不同模組的配置檔案格式還不一樣。那麼長期的結果就是配置檔案過於分散混亂,難以管理。
2.1.4 配置修改無法追溯。(配置放在程式碼中,通過git/svn提交記錄可追溯)
2.2 微服務配置中心
「配置中心」的思路就是把專案中各種配置、各種引數、各種開關,全部都放到一個集中的地方進行統一管理,並提供一套標準的介面。
簡單來說:
當各微服務應用需要載入配置資訊時(例:啟動時),會到配置中心獲取「配置中心」中的配置資訊;
當需要實時更新執行中的應用的配置時,在置配中心更新對應微服務應用的配置,之後或通過配置中心將配置的變更資訊推送給微服務應用,或微服務應用主動到配置中心拉取變更的配置資訊。
即能做到不停機動態變更配置資訊。
即:微服務配置中心能提高配置的安全性(一些敏感資訊不需要放在程式碼的配置檔案中),能支援實時修改,不需要重啟應用;
3.常見的微服務中心對比
對比源自:深度對比三種主流微服務配置中心
功能特性對比總結
這裡列一個表格總結一下三個產品的功能特點:
4.nacos配置中心的使用
5.如何技術選型
理解需求、技術特點是技術選型的首要任務
配置中心的維度(是否具備以下能力):
1.配置集中管理:分散式配置中心最基礎的要求
2.配置實效性:配置的修改實時生效要求
3.安全性:應用和配置的管理具有完善的許可權管理機制,並且新增編輯和釋出環節,儘量減少了人工誤操作發生的概率,所有的操作都有審計日誌,方便追蹤
4.配置修改簡單:提供的圖形化介面形式的配置管理
5.部署簡單:依賴非常少
6.開源:原始碼的重要性不言而喻,無論是解決問題、擴充套件新功能、或者後期代替官方渠道進而形成滿足自身特定需求的版本
7.版本釋出管理:所有的配置釋出都有版本概念,從而可以方便地支援配置的回滾
8.灰度釋出:支援配置的灰度釋出,比如點了釋出後,只對部分應用例項生效,等觀察一段時間沒問題後再推給所有應用例項
9.許可權管理、釋出稽核、操作審計:
應用和配置的管理都有完善的許可權管理機制,對配置的管理還分為了編輯和釋出兩個環節,從而減少人為的錯誤。
所有的操作都有審計日誌,可以方便地追蹤問題
10.提供開放平臺API
6.nacos配置中心原理
https://www.cnblogs.com/jsjwk/p/10880671.html
參考:
https://blog.csdn.net/crave_shy/article/details/81285217
https://www.cnblogs.com/jsjwk/p/10880671.html
http://www.360doc.com/content/19/0403/17/99071_826205359.shtml
http://blog.didispace.com/spring-cloud-alibaba-3/