《技术实践》给大家带来工作中有关技术的一些解决方案,喜欢的可以尝试一下,对于一些项目来说还是非常不错的,也可以从中看到另一个“世界”。
一. 在接入之前我们首先要明白什么是ACM?
应用配置管理ACM(Application Configuration Management)是一款在分布式架构环境中对应用配置进行集中管理和推送的产品。也就是我们所说的配置中心,我们的项目接入后ACM能帮助您集中管理所有应用环境中的配置,降低分布式系统中管理配置的成本,并降低因错误的配置变更造成可用性下降甚至发生故障的风险。具体介绍见官方网站阿里云ACM配置中心
二. 那么如何正确使用呢?我们直接步入主题
1.首先你需要在阿里云服务中开通ACM服务,然后进行相应的配置具体操作请见
https://www.aliyun.com/product/acm
2.正确在pom文件中导入依赖
<dependency> <!-- 阿里云ACM配置依赖 --> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId> <version>0.9.0.RELEASE</version></dependency>
3.我们的配置文件中只需要引入ACM相关配置即可
//配置到ACM配置中心spring: cloud: nacos: config: endpoint: acm.aliyun.com namespace: //你创建的名称空间 access-key: //你的密钥 secret-key: //你的密钥 ext-config[0]://引入多个配置文件如下 data-id: //你的相关配置名称 group: //你的组名称 refresh: true ext-config[1]: data-id: //如上 group: //如上 refresh: true
4.在ACM上创建相应的配置(下图来自ACM配置中心)
5.记得修改你的服务名称
Spring.application.name=***一致****
三. ACM的用处
1.ACM可以自动更新配置属性,当需要修改服务的配置时只需要修改ACM就可以,降低工作量。
2.ACM可以配置监听接口,客户端更新配置后可以立即生效,不需要重启程序。
3.方便管理,所有配置都有记录,当版本更新时可以选择不同的配置,切换不同配置。
四.ACM与其他产品对比(图片来源ACM官网)
通过以上分析相信大家看到了ACM还是有很大的优势存在,在当下分布式火热的开发流程中,服务上线的启动、各个服务之间的调用和配置都是不可避免的,而ACM的高可用和高性能,缓存和容灾的处理极大地减少了开发的工作量,加上ACM独特的查询推送轨迹,多语言的支持,目前还是非常值得一试。