为啥要配置中心?
微服务架构中,每个项目都有一个yml配置,管理起来麻烦。要使用spring cloud config来统一管理。
它支持配置服务放在配置服务的内存中(即本地),也支持放在远程码云(码云中国的github)仓库中。
在spring cloud config 组件中,分两个角色,一是config server(配置中心),二是config client(客户端配置)。
1.1.1. 架构
操作
一:操作码云
1.在码云中建立仓库
下一步
最好选择私有,据说访问要快些
下一步,在新建的仓库中选择文件--》新建文件--》
下一步在输入框中添加文件名
码云就ok了
二:下一步。在项目中创建个config-server服务模块。
1.在config-server模块的prm.xml中添加配置服务包
<!--Spring Cloud Config 服务端依赖--> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-config-server</artifactId> </dependency>
2.在配置类中开启配置中心服务
/** * @EnableConfigServer开启配置中心 */ @SpringBootApplication @EnableConfigServer public class ConfigApplication { public static void main(String[] args) { SpringApplication.run(ConfigApplication.class, args); } }
3.配置yml
eureka:
client:
serviceUrl: #指定注册中心的地址
defaultZone: http://localhost:1010/eureka/
instance: #是否显示ip地址
prefer-ip-address: true
server: #端口号
port: 1030
spring:
application: #服务名
name: config-server
cloud:
discovery:
client:
simple:
local:
service-id: config-server:1030 #显示的id
config:
server:
git:
uri: https://gitee.com/x542141191/config.springcloud.yml.git #仓库的https地址
username: 你的码云账号 #账号密码写真实的快一些我觉得,不使用也能访问有点慢
password: 你的码云密码
仓库https地址复制,克隆/下载---》https---》复制
配置中心就ok了
三:对我的user-server微服务进行操作
1.对user-server微服务的prm.xml添加客服端配置包
<!-- 配置中心客户端包 --> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-config-client</artifactId> </dependency>
2.修改yml文件,把赋值到码云的yml内容都注释掉(删掉也行,不推荐,因为后期你不好维护和查看)
spring:
cloud:
config:
uri: http://localhost:1030 #配置中心的地址
name: application-system #配置文件名,就是码云上的文件名 user-server3000-dev.yml
profile: dev #码云上的文件名-dev,去掉横杆,写dev
ok,这就行了。重启服务,能运行就ok了。
其他的微服务yml管理和上面流程一样,但仓库就不用新建了,新建文件就行了,再按照下一步走就ok了。
原文:https://www.cnblogs.com/bigbigxiao/p/12122142.html