nacos配置中心_Nacos做配置中心经常被问到的问题

本文介绍了Nacos作为配置中心时常见的问题,包括加载多个配置文件的方法、配置修改后的监听方式、对多语言的支持、与Apollo的对比以及部署的简易性。Nacos支持通过@NacosPropertySource注解加载多个配置文件,配置修改可以通过注解监听,目前SDK主要支持Java,其他语言可通过HTTP接口对接。与Apollo的比较建议根据实际需求选择,部署简单,可直接下载启动或使用Docker。
摘要由CSDN通过智能技术生成
f7d716611c7442ae13f5941ca38c3b02.png

今天来说说Nacos做配置中心经常被问到的问题

加载多个配置文件怎么处理?

配置修改了如何监听?

支持多语言吗?

跟Apollo对比哪个更好?

部署简单吗?

↓↓

04b77c600636577e3d2c02534f9cb4f9.png

-

1

-

加载多个配置文件怎么处理?

通过@NacosPropertySource可以注入一个配置文件,如果我们需要将配置分类存储或者某些配置需要共用,这种需求场景下,一个项目中需要加载多个配置文件,可以可以直接使用多个@NacosPropertySource注解即可。

@NacosPropertySource(dataId = "nacos-springboot", autoRefreshed = true)

@NacosPropertySource(dataId = "redis", autoRefreshed = true)

@SpringBootApplication

public class NacosSpringBootApp {

public static void main(String[] args) {

SpringApplication.run(NacosSpringBootApp.class, args);

}

}

或者@NacosPropertySources

@NacosPropertySources({

@NacosPropertySource(dataId = "nacos-springboot", autoRefreshed = true),

@NacosPropertySource(dataId = "redis", autoRefreshed = true)

})

后面我们会讲解在Spring Cloud中使用,可以直接用配置文件的方式指定多个data-id。

-

2

-

配置修改了如何监听?

先介绍一种比较古老的方式,太繁琐了,如下:

@NacosInjected

private ConfigService configService;

@PostConstruct

public void init() {

try {

onMessage();

} catch (NacosException e) {

e.printStackTrace();

}

}

public void onMessage() throws NacosException {

configService.addListener("nacos-springboot", "DEFAULT_GROUP", new AbstractListener() {

public void receiveConfigInfo(String config) {

System.err.println(config);

}

});

}

通过ConfigService添加一个监听器,监听具体的配置文件

下面使用注解方式来监听,既简单又方便很直接,如下:

@NacosConfigListener(dataId = "nacos-springboot")

public void onMessage(String config) {

System.out.println(config);

}

当然配置监听还支持多类型的转换,上面的示列只是简单的获取整个配置的字符串,关于更多的类型转换后面我们单独讲解。

-

3

-

支持多语言吗?

Nacos本身是提供Http接口的,通过接口我们可以对配置进行操作。只是目前SDK这块只支持Java,其他语言的后面会支持,只是目前还没开发,通过后台的示列代码我们可以看到有支持多语言的计划。

其他语言目前可以使用API来对接:https://nacos.io/zh-cn/docs/open-api.html

1ea0bb21a7c919045f5743382882a95e.png

-

4

-

跟Apollo对比哪个更好?

对比这块大家可以根据自身的需求去做一个比对,只要符合你的需求,那对你来说这个框架就是好的。

如果说你目前已经在使用Apollo,那么我建议还是不要换,太折腾。

如果你还没使用Apollo,在对配置中心做选型,这个时候可以去做下详细的对比。从功能点,稳定性,使用,部署等方面去比较。

如果你公司内部用了dubbo的话,我觉得Nacos可以考虑用起来,这样既然替代ZK,又能增加一个配置中心的功能,可以说是比较好的方式了。

-

5

-

部署简单吗?

Nacos部署非常简单,可以直接下载官方编译好的包,解压改改配置文件即可启动,集群部署也是一样的,后面我们会单独讲解集群部署。

同时还支持Docker部署,熟悉Docker的朋友就方便了。

-

6

-

多环境怎么区分?

阿里Nacos-配置-多环境

461b93e75ad629639d4eb1f7c611353c.png

4e4ddbd2318d9659f851f593a3eb8e6c.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值