携程Apollo简单入门教程这一篇就够了
1. Apollo背景
2. 安装Apollo服务端
2.1 环境要求
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


2.3.3 配置数据库连接信息

2.4 执行启动脚本
默认端口为: 8070
./demo.sh start
注意: 脚本会在本地启动3个服务,分别使用8070, 8080, 8090端口,请确保这3个端口当前没有被使用。

2.5 打开网页查看


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简单入门教程这一篇就够了的更多相关文章
- Golang简单入门教程——函数进阶篇
本文始发于个人公众号:TechFlow,原创不易,求个关注 今天是golang专题的第八篇,我们来聊聊golang当中的函数. 我们在之前的时候已经介绍过了函数的基本用法,知道了怎么样设计或者是定义一 ...
- 携程apollo系列-客户端集成
本文讲解如何在 Java 程序中集成 Apollo 配置, 主要涉及到一些基础用法. 对于一些高级用法, 比如如何加密/解密配置项 (可用于数据库密码配置), 如何动态切换数据源地址,如何动态切换日志 ...
- 携程apollo系列-个人开发环境搭建
本博客讲详细讲解如何在 Windows 搭建携程 Apollo 服务器 (用户个人开发). 开发服务器有多种搭建方式:(1) docker, 搭建过程非常简单, 推荐有 docker 环境(2) 部署 ...
- 程序员,一起玩转GitHub版本控制,超简单入门教程 干货2
本GitHub教程旨在能够帮助大家快速入门学习使用GitHub,进行版本控制.帮助大家摆脱命令行工具,简单快速的使用GitHub. 做全栈攻城狮-写代码也要读书,爱全栈,更爱生活. 更多原创教程请关注 ...
- GitHub这么火,程序员你不学学吗? 超简单入门教程 【转载】
本GitHub教程旨在能够帮助大家快速入门学习使用GitHub. 本文章由做全栈攻城狮-写代码也要读书,爱全栈,更爱生活.原创.如有转载,请注明出处. GitHub是什么? GitHub首先是个分布式 ...
- 分布式配置中心 携程(apollo)
1.传统配置文件与分布式配置文件区别 传统配置文件:如果修改了配置文件,需要重新打包发布,重新发布服务,而且每个环境的变更配置文件,比较繁琐. 分布式配置文件:将配置文件注册到配置中心上去,可以使用分 ...
- Flyway 简单入门教程
原文地址:Flyway 简单入门教程 博客地址:http://www.extlight.com 一.前言 Flyway 是一款开源的数据库版本管理工具,它更倾向于规约优于配置的方式.Flyway 可以 ...
- NumPy简单入门教程
# NumPy简单入门教程 NumPy是Python中的一个运算速度非常快的一个数学库,它非常重视数组.它允许你在Python中进行向量和矩阵计算,并且由于许多底层函数实际上是用C编写的,因此你可以体 ...
- Systemd 入门教程:实战篇
Systemd 入门教程:实战篇 上一篇文章,介绍了 Systemd 的主要命令,这篇文章主要介绍如何使用 Systemd 来管理我们的服务,以及各项的含义: 一.开机启动 对于那些支持 System ...
随机推荐
- 远程控制服务(SSH)之Linux环境下客户端与服务端的远程连接
本篇blog将讲述sshd服务提供的两种安全验证的方法,并且通过这两种方法进行两台Linux虚拟机之间的远程登陆. 准备工作: (1) 准备两台安装有Linux系统的虚拟机,虚拟机软件采用VM ...
- mysql8 的安装和设置
mysql8的安装 写在前面 与5.*的版本整体差不多,但是安装细节决定成败 下载 点击https://dev.mysql.com/downloads/file/?id=476233,也可以点这里,有 ...
- 推荐一款优秀的WPF开源项目
项目介绍 此项目应用了Prism MVVM框架,项目展示数据来源于其他服务程序,使用的WebAPI通信,如果要正常运行此程序,需要您自己做一个WebAPI程序,由API接口提供数据驱动,其实直接查看代 ...
- Just 5分钟!使用k3s部署轻量Kubernetes集群快速教程
大小仅有40MB的k3s为想要节省开销进行开发和测试的企业提供了一个很好的选择.本文将用一种极为简洁的方式,教你在5分钟之内使用k3s部署轻量Kubernetes集群. Kubernetes已经改变了 ...
- Java IO_001.File类--文件或文件夹相关操作
Java IO之File对象常用操作 File类:用于文件或文件夹或网址相关联的操作.可以关联或不关联文件(即关联不存在的文件).构造函数有: public File(String pathname) ...
- Cannot read property 'forEach' of undefined
在singer-detail组件中,有一个_normalizeSongs()方法,遍历数组 _normalizeSongs(list) { let ret = []; list.forEach(ite ...
- python语法入门之流程控制
python语法入门之流程控制 流程控制是指控制流程,具体指控制程序执行的流程. 流程控制分为三种: 1.顺序结构 程序从上而下的正常执行(正常执行的代码就是顺序结构) 2.分支结构 赋予程序人的思维 ...
- Angular工作笔记(2018/8/8)
需求1:input标签只允许输入数字且不会出现上下选择按钮 开始设置 type="number" 客户不想要出现上下选择按钮 解决方法: 但是这种写法会有一个限制,只能输入整数,无 ...
- 基于verdaccio的npm私有仓库搭建
详见个人博客:https://shengchangwei.github.io/verdaccio/ 一.使用npm安装 npm install --global verdaccio 二.cmd 启动 ...
- Feign设置assessToken
import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.an ...