分布式配置中心阿波罗的搭建与客户端的应用

为了统一管理微服务配置文件,实现动态化刷新配置文件,常见的两种方式为阿波罗、SpringCloudConfig,关于两者主要区别是:

阿波罗配置文件存放在数据库中,SpringCloudConfig存放在Git里面

一、搭建过程

本篇主要演示阿波罗的搭建方式,详细步骤如下:

1、下载 aploll 配置中心

下载地址:https://github.com/nobodyiam/apollo-build-scripts

下载后首先本地解压一份,获取 sql 文件夹中的两个 sql 文件,连接服务器地址,运行创建这两个数据库。

2、上传至服务器

将 apollo-build-scripts-master.zip 文件上传到服务器中,我上传的是 /use/local 目录,上传后解压该 zip 文件。

3、修改demo.sh文件

编辑 demo.sh 文件,修改 ApolloPortalDB 和 ApolloConfigDB 相关的数据库连接串信息。

#apollo config db info
apollo_config_db_url=jdbc:mysql://数据库:3306/ApolloConfigDB?characterEncoding=utf8
apollo_config_db_username=用户名
apollo_config_db_password=密码(如果没有密码,留空即可)

# apollo portal db info
apollo_portal_db_url=jdbc:mysql://数据库:3306/ApolloPortalDB?characterEncoding=utf8
apollo_portal_db_username=用户名
apollo_portal_db_password=密码(如果没有密码,留空即可)

然后导入 sql 文件下的两个 sql 文件,也就是创建两个数据库,ApolloPortalDB 和 ApolloConfigDB,至于两个库的作用请自行查看官方文档说明吧。

修改 meta server 为部署服务器地址:

# meta server url
config_server_url=http://192.168.10.130:8080
admin_server_url=http://192.168.10.130:8090
eureka_service_url=$config_server_url/eureka/
portal_url=http://192.168.10.130:8070

根据自己情况填写。

4、启动阿波罗
./demo.sh start

如上图所示会持续1分钟左右,启动成功后如下图所示:

访问地址:

默认账户密码:apollo admin

创建一个项目:

创建配置:

填写 key、value 提交即可:

二、客户端集成配置文件

1、将本地配置存入到阿波罗平台中。

将properties配置文件格式的内容粘贴至 文本中。

转换工具:http://www.toyaml.com/index.html

2、引入Maven依赖
<dependency>
    <groupId>com.ctrip.framework.apollo</groupId>
    <artifactId>apollo-client</artifactId>
    <version>1.0.0</version>
</dependency>
<dependency>
    <groupId>com.ctrip.framework.apollo</groupId>
    <artifactId>apollo-core</artifactId>
    <version>1.0.0</version>
</dependency>
3、创建 application.properties
app.id=mayikt644064779

apollo.meta=http://192.168.212.236:8080
4、项目启动开启阿波罗配置文件

@EnableApolloConfig

运行后,可以在 eureka 中看到注册的客户端:

5、本地缓存

项目启动后会在本地缓存一份,详细可见

C:\opt\settings\server.properties(Windows)

我创建了一个java相关的公众号,用来记录自己的学习之路,感兴趣的小伙伴可以关注一下微信公众号哈:niceyoo

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/414262.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

PHP攻击防御

原文地址 有个朋友网站被攻击&#xff0c;刚好我们的网站有比较全面的攻击防御&#xff0c;了解了一下自己网站的防御&#xff0c;再上网搜了一些文章来看&#xff0c;觉得上面的文章写得很全面&#xff0c;特此备份。留着以后自己忘记的时候看看。

毕业一年的大专生程序员工作总结(java后台)

文章导读 一、回眸过去 – 闲扯的话 – 零碎的技术二、经验总结 – 沟通交流 – 贵在坚持 – 合理规划三、展望未来 – 积累行业背景 – 学习清单四、最后补充 一、 回牟过去 1、闲扯的话 大专生毕业一年工作总结&#xff0c;谈不上予人借鉴&#xff0c;算是对自己过去一年…

mysql自带加密解密字符集问题

由于公司业务需要&#xff0c;需要对已有的数据进行加密&#xff0c; 由于数据加密之后需要可逆的解密&#xff0c;最先考虑使用encode&#xff0c;decode函数&#xff1b;在实际使用的过程遇到加密数据解密之后得不到原本的值&#xff0c;后发现是由于字符集不正确&#xff0c…

重温类加载机制

前言 我们在学习 java 基础的时候&#xff0c;从宏观上了解一个类到运行大致是&#xff1a;.java 文件通过 javac 编译器编译得到 .class 文件&#xff0c;在用到该类时&#xff0c;jvm 会加载该 class 文件&#xff0c;并创建对应的 class 对象&#xff0c;将 class 文件加载…

微信团队分享:微信移动端的全文检索多音字问题解决方案

本文来自微信开发团队WeMobileDev公众号的技术分享。 1、前言 微信的移动客户端全文搜索中的多音字问题一直是搜索体验的痛点之一。微信客户端全文搜索在上线以后&#xff0c;也经常收到用户关于多音字问题的反馈。所以&#xff0c;微信全文搜索中的多音字搜索成了一个迫切需要…

PHP编译不成功

早上开机的时候运行本地网站&#xff0c;蹦出一个error: ERROR:syntax error, unexpected 92 (T_CONSTANT_ENCAPSED_STRING), expectin懵&#xff0c;昨天下班前不是还好好的吗&#xff08;其实我不知道下班前是不是好好的&#xff0c;因为下班前没跑程序好尴尬&#xff09;&am…

201571030128/201571030118《小学四则运算练习软件软件需求说明》结对项目报告

一、以实验二个人项目、实验三结对项目所开发的小学生四则运算练习软件作为原型&#xff0c;实施小学生四则运算练习软件用户调研活动具体过程。 1、真实的调研对象 对象性别年龄身份刘老师女23小学数学实习老师杨同学男12小学五年级学生杨家长女35杨同学的家长何老师男24小学数…

QQ互联登陆(Java)

一、准备部分 1、账户注册 腾讯开放平台网址: https://connect.qq.com/index.html 首先需要到开放平台注册QQ互联开发者身份。注册之后创建一个网站应用&#xff0c;注意&#xff0c;需要备案成功的域名才可申请。 2、应用审核 审核通过后如下图所示&#xff0c;审核通过后可以…

动静分离-静态资源缓存控制

一、静态资源服务与动态资源服务的区别 首先动静分离非前后端分离&#xff0c;关于两者的介绍如下&#xff1a; 动静分离&#xff1a;动态资源(jsp、ftl)与静态资源(js、img、css)分开前后端分离&#xff1a;接口与视图分开独立开发部署二、为什么静态资源需要实现CDN内容加速 …

分布式session共享

一、前言 为什么会出现session共享问题&#xff1f; 客户端与服务器交互时会产生唯一的sessionid用于标记用户&#xff0c;但是在分布式架构中&#xff0c;如果还是采用 session 的方式&#xff0c;用户发起请求&#xff0c;通过 nginx 做请求转发时&#xff0c;并不知道是转发…

InnoDB锁问题

InnoDB锁问题 InnoDB与MyISAM的最大不同有两点&#xff1a;一是支持事务&#xff08;TRANSACTION&#xff09;&#xff1b;二是采用了行级锁。行级锁与表级锁本来就有许多不同之处&#xff0c;另外&#xff0c;事务的引入也带来了一些新问题。下面我们先介绍一点背景知识&#…

phpsduty环境下,使用composer安装报错

1.首先要下载composer进行安装 点击下载 &#xff0c;最新的composer要求的php版本都比较高&#xff0c;安装之后&#xff0c;将composer的安装路径加入环境变量&#xff0c;我的参考路径&#xff1a;D:\composer&#xff1b; 2.我的环境使用的php版本是php7.0.12-nts&#xf…