分布式配置中心選型


種類、對比參考博客:

https://www.cnblogs.com/xiaoqi/p/configserver-compair.html

https://www.jianshu.com/p/d78fa8412cbf

https://blog.csdn.net/z960339491/article/details/80521882

https://blog.csdn.net/s573626822/article/details/82879083

https://www.jianshu.com/p/0b6ab664d507

http://vernonzheng.com/2015/02/09/%E5%BC%80%E6%BA%90%E5%88%86%E5%B8%83%E5%BC%8F%E9%85%8D%E7%BD%AE%E4%B8%AD%E5%BF%83%E9%80%89%E5%9E%8B/

 

配置中心架構演變探討:https://blog.csdn.net/weixin_37186559/article/details/81157915

 

Apollo地址和參考文檔:

集群部署思路:

client通過configService與配置中心交互,portal通過adminService管理配置中心數據,在configService與adminService集群部署的情況下,client與portal 是通過metaservice查詢對應的configservice與adminservice節點通訊
那么configService與adminService啟動多點(在單機偽集群下啟動不同端口),服務名相同,app.id相同,注冊到Eureka注冊中心應分別表現為同一個服務多個節點
然后portal工程apollo-env.properties文件中配置dev.meta值為configServer多集群,能否支持逗號分隔待查,不支持就要單獨lb負載
我們工程實際的client在配置apollo.meta地址時也要配置成集群地址,能否支持逗號分隔待查,不支持就要單獨lb負載

參考:https://www.jianshu.com/p/a80212af3646

最有用的:

1.https://github.com/ctripcorp/apollo/wiki/Apollo%E5%BC%80%E5%8F%91%E6%8C%87%E5%8D%97

2.https://github.com/ctripcorp/apollo/wiki/%E9%83%A8%E7%BD%B2&%E5%BC%80%E5%8F%91%E9%81%87%E5%88%B0%E7%9A%84%E5%B8%B8%E8%A7%81%E9%97%AE%E9%A2%98#42-%E6%B7%BB%E5%8A%A0%E8%87%AA%E5%AE%9A%E4%B9%89%E7%9A%84%E7%8E%AF%E5%A2%83

環境設置:https://blog.csdn.net/qq_33320785/article/details/80772810

客戶端接入樣例工程:https://github.com/ctripcorp/apollo-use-cases

https://github.com/smillbob/apolloDemo

注意:

官方演示客戶端接入:需要修改客戶端引入的apollo-core工程中的com.ctrip.framework.apollo.core.ConfigConsts類的配置,實際上線工程不要修改!!:

package com.ctrip.framework.apollo.core;

public interface ConfigConsts {
String NAMESPACE_APPLICATION = "TEST1.sunfield";
String CLUSTER_NAME_DEFAULT = "sunfield001";
String CLUSTER_NAMESPACE_SEPARATOR = "+";
String APOLLO_CLUSTER_KEY = "apollo.cluster";
String APOLLO_META_KEY = "apollo.meta";
String CONFIG_FILE_CONTENT_KEY = "content";
String NO_APPID_PLACEHOLDER = "ApolloNoAppIdPlaceHolder";
long NOTIFICATION_ID_PLACEHOLDER = -1;
}

把namespace和cluster改為自己項目在portal頁面的配置

在啟動客戶端時,需要指定環境參數:

-Denv=dev -Dapollo.meta=http://localhost:8080

尤其是-Denv=dev需要設置為自己應用所在環境,默認為dev;-Dapollo.meta是實際連接的apollo-configserver工程地址

3.本地IDE啟動:

Apollo開發指南:https://github.com/ctripcorp/apollo/wiki/Apollo%E5%BC%80%E5%8F%91%E6%8C%87%E5%8D%97

Java客戶端使用指南:

https://github.com/ctripcorp/apollo/wiki/Java%E5%AE%A2%E6%88%B7%E7%AB%AF%E4%BD%BF%E7%94%A8%E6%8C%87%E5%8D%97

4.服務器部署:

分布式部署指南:https://github.com/ctripcorp/apollo/wiki/%E5%88%86%E5%B8%83%E5%BC%8F%E9%83%A8%E7%BD%B2%E6%8C%87%E5%8D%97

5.架構:

配置中心設計指南:https://github.com/ctripcorp/apollo/wiki/Apollo%E9%85%8D%E7%BD%AE%E4%B8%AD%E5%BF%83%E8%AE%BE%E8%AE%A1

架構官方解析:https://mp.weixin.qq.com/s/-hUaQPzfsl9Lm3IqQW3VDQ

6.其他:

Home(含演示地址):https://github.com/ctripcorp/apollo/wiki

配置中心介紹:

https://github.com/ctripcorp/apollo/wiki/Apollo%E9%85%8D%E7%BD%AE%E4%B8%AD%E5%BF%83%E4%BB%8B%E7%BB%8D

Quickstart:https://github.com/ctripcorp/apollo/wiki/Quick-Start

Quickstart安裝包及教程:https://github.com/nobodyiam/apollo-build-scripts

 

搭建Apollo(修改注冊中心和配置集群、客戶端工程接入):

源碼編譯打包:跳過maven測試,改兩個插件配置加上skipTest,參考:

https://www.cnblogs.com/lixuwu/p/5941363.html

https://www.cnblogs.com/javabg/p/8026881.html

https://blog.csdn.net/u012149181/article/details/80767327

錯誤:

[ERROR] OS=Windows and the assembly descriptor contains a *nix-specific root-relative-reference (starting with slash) /

參照:https://stackoverflow.com/questions/32604733/error-os-windows-and-the-assembly-descriptor-contains-a-nix-specific-root-relat

https://blog.csdn.net/wangshuminjava/article/details/82768166

https://www.cnblogs.com/softidea/p/4186090.html

Eureka工程權限驗證問題(實際沒有用到):

https://www.oschina.net/question/3688227_2275113

客戶端例子:https://www.cnblogs.com/toov5/p/9986621.html

https://www.cnblogs.com/FlyAway2013/p/8811385.html

https://www.jianshu.com/p/7d91cb5109a4

修改:主要參照open-platform開源工程對apollo的修改文檔

其他參照(實際沒有用到):

https://blog.csdn.net/luhong327/article/details/81453001

https://blog.csdn.net/u011943534/article/details/82152133

https://www.iteye.com/topic/1148244#2430708

https://blog.csdn.net/qq_33320785/article/details/80772810

部署:

多點:https://blog.csdn.net/z960339491/article/details/80667559

IDEA執行打包腳本:https://blog.csdn.net/u012443641/article/details/81295999

應用了Apollo的開源Spring Cloud分布式架構例子:https://gitee.com/owenwangwen/open-capacity-platform

Apollo部署例子:https://blog.csdn.net/z960339491/article/details/80667559

 

防火牆:https://www.cnblogs.com/xxoome/p/6884376.html

用戶創建,密碼設置,用戶組創建:https://www.linuxidc.com/Linux/2017-06/144916.htm

https://www.cnblogs.com/clicli/p/5943788.html

 

 

阿里團隊介紹自己的Diamond:http://jm.taobao.org/2016/09/28/an-article-about-config-center/

 

skywalking:

https://gitee.com/OpenSkywalking/sky-walking

http://skywalking.apache.org/

人人代碼生成:https://gitee.com/GongZiXiaoBai0419/renren-generator

人人開源網站:https://www.renren.io/

 

與公司架構密切相關的開源項目參考:

后端架構:open-capacity-platform

https://gitee.com/owenwangwen/open-capacity-platform

各層組件代碼自動生成和直接使用:JeeSite

官網:https://jeesite.gitee.io/

4.x:https://gitee.com/thinkgem/jeesite4

1.x:https://gitee.com/thinkgem/jeesite

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM