首页 > 其他 > 详细

携程Apollo简单入门教程这一篇就够了

时间:2019-11-27 14:50:27      阅读:69      评论:0      收藏:0      [点我收藏+]

1. Apollo背景

对程序配置的期望值也越来越高:配置修改后实时生效,灰度发布,分环境、分集群管理配置,完善的权限、审核机制……
 
废话不多说,参考官方文档
 
如果不想看文档, 也没关系, 跟着我一步步走.
 

2. 安装Apollo服务端

因为是简单案例, 所以就用官方的Quick Start
 

2.1 环境要求

以下是采用Linux环境配置 Apollo服务启动包

2.1.1 CentOS7, 不懂linux的, 可以不要继续往下看了.

虚拟机ip为: 192.168.102.140

技术分享图片

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中的数据库.

技术分享图片

步骤2 导入sql

技术分享图片

通过各种MySQL客户端导入sql/apolloportaldb.sql即可。

 

技术分享图片

 

技术分享图片

 

2.3.2 创建ApolloConfigDB

通过各种MySQL客户端导入sql/apolloconfigdb.sql即可。
 
技术分享图片
 
技术分享图片
 

2.3.3 配置数据库连接信息

技术分享图片

 

2.4 执行启动脚本

默认端口为: 8070

./demo.sh start

注意: 脚本会在本地启动3个服务,分别使用8070, 8080, 8090端口,请确保这3个端口当前没有被使用。

技术分享图片

2.5 打开网页查看

 
技术分享图片
 
添加两个参数
timeout :100
batch : 200
技术分享图片
 
=================================================以上 服务端配置完毕
 

3. Apollo客户端

 3.1 创建一个springboot项目

技术分享图片

选择 SringWeb的依赖

技术分享图片

 

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的最简单的使用, 如果想要了解更多, 还是从官方文章获取.

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

有疑问留言, 我会及时回复

代码之路, 道阻且长, 且行且珍惜

 

 

 
 

携程Apollo简单入门教程这一篇就够了

原文:https://www.cnblogs.com/ccz-love-lqm/p/11941267.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!