攜程Apollo簡單入門教程這一篇就夠了

1. Apollo背景

對程序配置的指望值也愈來愈高:配置修改後實時生效,灰度發佈,分環境、分集羣管理配置,完善的權限、審覈機制……
 
廢話很少說,參考 官方文檔
 
若是不想看文檔, 也不要緊, 跟着我一步步走.
 

2. 安裝Apollo服務端

由於是簡單案例, 因此就用官方的 Quick Start
 

2.1 環境要求

如下是採用Linux環境配置 Apollo服務啓動包

2.1.1 CentOS7, 不懂linux的, 能夠不要繼續往下看了.

虛擬機ip爲: 192.168.102.140html

2.1.2 JDK1.8 以上, 不懂安裝JDK, 請自行百度

2.1.3 MySQL5.6.5+以上, 不懂安裝MySQL, 請自行百度

 

2.2 下載 Apollo服務端 Jar包

2.2.1 百度網盤

下載

2.2.2  本身下載源碼, 本身打包, 挑戰性比較大, 建議放棄

下載

2.2.3 把下載好的jar包, 從windows上, 拉取到linux系統中

2.3 建立數據庫, 存儲Apollo的配置數據

2.3.1 建立ApolloPortalDB

步驟1 經過mysql客戶端, 如Navicat, 鏈接linux中的數據庫.java

步驟2 導入sqlmysql

經過各類MySQL客戶端導入sql/apolloportaldb.sql便可。linux

 

 

 

2.3.2 建立ApolloConfigDB

經過各類MySQL客戶端導入 sql/apolloconfigdb.sql便可。
 
 
 

2.3.3 配置數據庫鏈接信息

 

2.4 執行啓動腳本

默認端口爲: 8070git

./demo.sh startgithub

注意: 腳本會在本地啓動3個服務,分別使用8070, 8080, 8090端口,請確保這3個端口當前沒有被使用。spring

2.5 打開網頁查看

 
 
添加兩個參數
timeout :100
batch : 200
 
=================================================以上 服務端配置完畢
 

3. Apollo客戶端

 3.1 建立一個springboot項目

選擇 SringWeb的依賴sql

 

3.2 添加Apollo依賴

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

 

3.3 配置application.properties

注意: 鏈接apollo界面的端口爲8090, 鏈接server端口爲 8080數據庫

#appId 同來區別不一樣的配置
app.id=SampleApp
#apollo服務器地址
apollo.meta=http://192.168.102.140:8080

 

3.4 測試項目結構

3.4.1 AppConfig

@Configuration
@EnableApolloConfig
public class AppConfig {
  @Bean
  public TestJavaConfigBean javaConfigBean() {
    return new TestJavaConfigBean();
  }
}

3.4.2 TestJavaConfig

public class TestJavaConfigBean {
  @Value("${timeout:100}")
  private int timeout;
  private int batch;
 
  @Value("${batch:200}")
  public void setBatch(int batch) {
    this.batch = batch;
  }
 
  public int getTimeout() {
    return timeout;
  }
 
  public int getBatch() {
    return batch;
  }
}

3.4.3 TestController

/**
 * @author c-can-z
 */
@RestController
public class TestController {

    @Autowired
    private TestJavaConfigBean testJavaConfigBean;

    @RequestMapping("get")
    public String get(){
        int batch = testJavaConfigBean.getBatch();
        int timeout = testJavaConfigBean.getTimeout();
        return "batch:"+batch+", timeout:"+timeout;
    }

}

3.5 啓動項目

3.5.1 訪問項目

3.5.2 修改apollo配置

3.5.3 查看日誌

3.5.4 再一次訪問項目

4 後記

該文章爲apollo的最簡單的使用, 若是想要了解更多, 仍是從官方文章獲取.windows

目前的配置中 SpringCloud-Config,  zookeeper等, 使用都是大同小異

有疑問留言, 我會及時回覆

代碼之路, 道阻且長, 且行且珍惜

相關文章
相關標籤/搜索