Spring Boot項目整合Apollo配置中心(三)

筆者在工作中遇到如下問題,隨着程序功能越多,配置文件不斷增加,一些功能的開關、服務器地址、接口地址、不同環境的一些配置文件不同,這些在每次發佈不同環境、更新項目時都比較繁瑣,後來學習微服務時接觸到了Spring Cloud Config配置中心,用了一段時間發現比之前方便不少,但是還是比較繁瑣和麻煩,而且功能還達不到生產級,只能小規模場景下使用,在中大規模企業場景下不建議採用。後來瞭解到攜程Apollo配置中心,Apollo支持完善的管理界面,支持多環境,配置變更實時生效,權限和配置審計等多種生產級功能,而且在攜程到微服務架構體系中也運用了這個,在國內衆多互聯網公司也有落地案例,就開始去接觸瞭解。最後結合工作和學習的一些經驗分享給大家Apollo的入門使用和一些走過的坑,本篇文章主要介紹使用Spring Boot項目整合Apollo配置中心來管理髮布配置文件。

簡要步驟:

①、使用Apollo創建一個項目

②、新增項目配置文件

③、創建一個Spring Boot項目

④、修改配置文件、編寫Java類

⑤、使用Apollo發佈項目配置文件

⑥、啓動本地項目查看從Apollo配置中心讀取的文件

 

推薦博客:

Apollo架構體系、Apollo運行原理、Apollo配置中心簡單介紹:https://blog.csdn.net/zjh_746140129/article/details/86179522

Linux下配置安裝Apollo、Centons下配置安裝Apollo:https://blog.csdn.net/zjh_746140129/article/details/86179601

Spring Boot項目整合Apollo配置中心:https://blog.csdn.net/zjh_746140129/article/details/86361168

Spring boot項目整合apollo錯誤:for env UNKNOWN from com.ctrip.framework.apollo.internals.DefaultMetaServer

 

詳細步驟:

一、使用Apollo創建一個項目

1、登錄打開Apollo

2、新建項目

 

二、新增項目配置文件 

1、點擊文本,選擇編輯

2、編輯完提交 

 

 

3、添加集羣

注:這裏只配置了DEV環境,這裏的集羣名稱後面在項目配置中會用到。 

 

三、創建Spring Boot項目

注:這裏用了之前的一篇boot整合jpa的案例,大家也可以自己新建一個,後面提供了核心實現代碼

Spring Boot2.0系列教程之 JPA 和 Thymeleaf 實踐(五):https://blog.csdn.net/zjh_746140129/article/details/81254965

github源碼地址:https://github.com/zjh746140129/Spring-Boot2.0

pom文件新增

<dependency>
   <groupId>com.ctrip.framework.apollo</groupId>
   <artifactId>apollo-client</artifactId>
   <version>1.1.2</version>
</dependency>

 

四、修改配置文件、編寫Java類

1、配置文件application.properties,這裏app.id要和Apollo裏面項目的appId一致

app.id=test-demo
apollo.bootstrap.enabled = true
apollo.meta=http://192.168.234.155:8080
spring.profiles.active=dev

2、配置文件配置文件application-dev.properties,這裏的cluster=dev是Apollo中集羣的名字

#apollo的配置
apollo.cluster=dev

 

2、編寫Java類

package com.boot.config;

import com.ctrip.framework.apollo.spring.annotation.EnableApolloConfig;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Configuration;

/**
 * Created by zhoujh on 2019/1/9.
 */
@Configuration
@EnableApolloConfig
public class BootConfig {

    @Value("${CONFIG.PlatFormCode}")
    private String PlatFormCode;

    public String getPlatFormCode() {
        return PlatFormCode;
    }

    public void setPlatFormCode(String platFormCode) {
        PlatFormCode = platFormCode;
    }
}

在controller測試從Apollo配置中心獲取

 

五、使用Apollo發佈項目配置文件

1、點擊發布

 

六、啓動本地項目查看從Apollo配置中心讀取的文件

1、修改項目啓動設置

-Denv=DEV 
-Denv就是開發環境 DEV表示阿波羅裏面的集羣名稱
linux服務器啓動jar 也需要加一個這個,例如 java -Denv=DEV  -jar  abc.jar

 

2、啓動項目查看控制檯是否連接Apollo

 3、查看Apollo實例列表

注:只要應用連接上這裏就會有,如果沒有說明沒有連接上Apollo

 

4、測試訪問,說明已經讀取到


5、添加配置文件Apollo再發布

6、再訪問首頁查看控制檯

可以看到已經再次獲取到了

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章