中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

apollo如何搭建本地開發環境

發布時間:2021-06-21 14:17:57 來源:億速云 閱讀:452 作者:小新 欄目:編程語言

這篇文章主要為大家展示了“apollo如何搭建本地開發環境”,內容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領大家一起研究并學習一下“apollo如何搭建本地開發環境”這篇文章吧。

開源配置中心 - Apollo

Apollo(阿波羅)是攜程框架部門研發的配置管理平臺,能夠集中化管理應用不同環境、不同集群的配置,配置修改后能夠實時推送到應用端,并且具備規范的權限、流程治理等特性。服務端基于Spring Boot和Spring Cloud開發,打包后可以直接運行,不需要額外安裝Tomcat等應用容器。

檢出代碼

apollo github

可以fork下然后本地使用idea打開

數據庫腳本

執行以下腳本創建ApolloConifgDB、ApolloPortalDB

  • apollo.scripts.sql.apolloconfigdb.sql

  • apollo.scripts.sql.apolloportaldb.sql

啟動configservice adminservice

Main class配置

com.ctrip.framework.apollo.assembly.ApolloApplication

VM opions

-Dapollo_profile=github 
-Dspring.datasource.url=jdbc:mysql://localhost:3306/ApolloConfigDB?characterEncoding=utf8 
-Dspring.datasource.username=root 
-Dspring.datasource.password=
Program arguments
--configservice --adminservice

啟動完后,打開 http://localhost:8080可以看到apollo-configservice和apollo-adminservice都已經啟動完成并注冊到Eureka

啟動Apollo-Portal

Main class配置

com.ctrip.framework.apollo.portal.PortalApplication
-Dapollo_profile=github,auth 
-Ddev_meta=http://localhost:8080/ 
-Dserver.port=8070 
-Dspring.datasource.url=jdbc:mysql://localhost:3306/ApolloPortalDB?characterEncoding=utf8 
-Dspring.datasource.username=root 
-Dspring.datasource.password=

如果啟用了auth profile的話,默認的用戶名是apollo,密碼是admin

應用在SIT、UAT、生產環境機器上

1.新增目錄/opt/data/目錄,且有可讀寫權限;

2.新增文件:/opt/settings/server.properties 且加入配置:

env=DEV
sit: env=FAT
uat: env=UAT
生產:env=PRO

客戶端例子

@Component 設置組件名稱
@RefreshScope 指定配置改變可以刷新
@ConfigurationProperties(prefix = "redis.cache")
@Component("sampleRedisConfig")
@RefreshScope
public class SampleRedisConfig {
 private static final Logger logger = LoggerFactory.getLogger(SampleRedisConfig.class);
 private int expireSeconds;
 private String clusterNodes;
 private int commandTimeout;
 private Map<String, String> someMap = Maps.newLinkedHashMap();
 private List<String> someList = Lists.newLinkedList();
 @PostConstruct
 private void initialize() {
 logger.info(
  "SampleRedisConfig initialized - expireSeconds: {}, clusterNodes: {}, commandTimeout: {}, someMap: {}, someList: {}",
  expireSeconds, clusterNodes, commandTimeout, someMap, someList);
 }
 public void setExpireSeconds(int expireSeconds) {
 this.expireSeconds = expireSeconds;
 }
 public void setClusterNodes(String clusterNodes) {
 this.clusterNodes = clusterNodes;
 }
 public void setCommandTimeout(int commandTimeout) {
 this.commandTimeout = commandTimeout;
 }
 public Map<String, String> getSomeMap() {
 return someMap;
 }
 public List<String> getSomeList() {
 return someList;
 }
 @Override
 public String toString() {
 return String.format(
  "[SampleRedisConfig] expireSeconds: %d, clusterNodes: %s, commandTimeout: %d, someMap: %s, someList: %s",
   expireSeconds, clusterNodes, commandTimeout, someMap, someList);
 }
}

設置監聽

@Component
public class SpringBootApolloRefreshConfig {
 private static final Logger logger = LoggerFactory.getLogger(SpringBootApolloRefreshConfig.class);
 @Autowired
 private ApolloRefreshConfig apolloRefreshConfig;
 @Autowired
 private SampleRedisConfig sampleRedisConfig;
 @Autowired
 private RefreshScope refreshScope;
 @ApolloConfigChangeListener
 public void onChange(ConfigChangeEvent changeEvent) {
 logger.info("before refresh {}", sampleRedisConfig.toString());
 refreshScope.refresh("sampleRedisConfig");
 logger.info("after refresh {}", sampleRedisConfig.toString());
 }
}

以上是“apollo如何搭建本地開發環境”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

巢湖市| 惠来县| 京山县| 广灵县| 广丰县| 芜湖县| 湖州市| 惠州市| 甘南县| 台东县| 富蕴县| 双流县| 蛟河市| 墨竹工卡县| 同德县| 原平市| 新蔡县| 葵青区| 巢湖市| 通海县| 龙江县| 揭西县| 吉隆县| 延吉市| 德格县| 容城县| 新沂市| 东安县| 射洪县| 峨眉山市| 马尔康县| 城市| 石林| 泸西县| 青铜峡市| 津南区| 三门县| 大安市| 磐石市| 丹东市| 宽城|