SpringCloud Nacos配置


依赖版本

      <dependency>
        <groupId>com.alibaba.cloud</groupId>
        <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
        <version>2.2.4.RELEASE</version>
      </dependency>
      <dependency>
        <groupId>com.alibaba.cloud</groupId>
        <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
        <version>2.2.4.RELEASE</version>
      </dependency>

配置中心配置

配置类:NacosConfigProperties

前缀:spring.cloud.nacos.config

参数描述
server-addrnacos服务地址,优先级比endpoint高。
username用户名
password密码
encode配置内容编码方式
groupnacos 配置组,组是配置数据元信息。
默认值:DEFAULT_GROUP
prefixnacos 配置 dataId 前缀。
file-extensionnacos config dataId 的后缀,也是配置内容的文件扩展名。
timeout配置超时时间。
默认值:3000
max-retry长轮询的最大重试次数。
config-long-poll-timeout长轮询的超时时间,单位为毫秒
config-retry-time长轮询任务重试时间,单位为毫秒
enable-remote-sync-config启用远程同步配置,监听器首次添加时拉取远端配置,默认值:false
endpointnacos服务的域名
namespace命名空间ID。
Nacos通过不同的命名空间来区分不同的环境,进行数据隔离
access-keyaccess key
secret-keysecret key
context-path服务器的上下文路径。
cluster-name集群名称
namedataId 名称
shared-configs一组共享配置,例如:
spring.cloud.nacos.config.shared-configs[0]=xxx .
extension-configs一组扩展配置。例如:
spring.cloud.nacos.config.extension-configs[0]=xxx .
refresh-enabled刷新配置的主开关,默认:true(打开)

注册中心配置

配置类:NacosDiscoveryProperties

前缀:spring.cloud.nacos.discovery

参数描述
server-addrnacos服务地址,优先级比endpoint高。
注:多个IP可以通过“,”号隔离,例如192.168.80.1:8848,192.168.80.1:8848 填写域名时前缀不要加上http://
username用户名
password密码
endpointnacos服务的域名
namespace命名空间ID。
Nacos通过不同的命名空间来区分不同的环境,进行数据隔离,服务消费时只能消费到对应命名空间下的服务。
watch-delay默认为30s。
默认为true,客户端在启动时会创建一个线程池,该线程定期去查询服务端的信息列表,该请求不会立刻返回,默认等待30s,若在30s内,服务端信息列表发生变化,则该请求立刻返回,通知客户端拉取服务端的服务信息列表,若30s内,没有变化,则30s时该请求返回响应,客户端服务列表不变,再次发生该请求。
注:推荐该值为30s即可,无需修改
log-namenacos客户端会在启动时打印一部分发送注册请求信息和异常日志,可以通过日志查看注册的nacos集群地址、服务名、nameSpace、IP、元数据等内容,文件名默认为naming.log。
注:推荐将该日志的位置设置为和其他日志在一个文件夹下
service项目向注册中心注册服务时的服务名。
默认为spring.application.name 变量。
注:该服务名必须使用小写,因为nacos服务名区分大小写,如果服务名不完全匹配,那么无法调用服务
weightnacos支持服务端基于权重的负载均衡,该值默认为1。
注:建议该值保持默认即可,因为代码可能会部署到不同的服务器上,无法确保某台服务器的配置一定较好,如果有需要修改该值的需求,可以上控制台修改,这样可以保证对应IP服务器的权重值较高
cluster-name集群名称,默认值:DEFAULT
group分组名称,默认值:DEFAULT_GROUP
naming-load-cache-at-start客户端在启动时是否读取本地配置项(一个文件)来获取服务列表。
默认为false。
注:推荐该值为false,若改成true。则客户端会在本地的一个文件中保存服务信息,当下次宕机启动时,会优先读取本地的配置对外提供服务。
metadata给服务添加一些标签,例如属于什么业务线,该元数据会持久化存储在服务端,但是客户端消费时不会获取到此值,默认为空。
注:推荐为空,我们可以通过已经注册的服务名来找到具体的业务线,无需添加metadata
register-enabled该项目是否向注册中心注册服务,默认为true。
注:如果服务从注册中心只消费服务,没有对外提供服务,那么该值可设置为false,可减少客户端线程池的创建,无需向服务端发送心跳请求,提高性能。
ip服务实例要注册的ip地址,不用设置
network-interface想要注册哪个网络接口的ip
port向nacos注册服务时,服务对应的端口号。
注:无需修改,默认为应用对外提供服务的端口号,server.port
secure是否是 https 服务,默认:false
access-keyaccess key
secret-keysecret key
heart-beat-intervalnacos客户端向服务端发送心跳的时间间隔,默认5s。
注:客户端向服务端每隔5s向服务端发送心跳请求,进行服务续租,告诉服务端该实例IP健康。若在3次心跳的间隔时间(默认15s)内服务端没有接受到该实例的心跳请求,则认为该实例不健康,该实例将无法被消费。如果再次经历3次心跳的间隔时间,服务端接受到该实例的请求,那么会立刻将其设置外健康,并可以被消费,若未接受到,则删除该实例的注册信息。推荐配置为5s,如果有的业务线希望服务下线或者出故障时希望尽快被发现,可以适当减少该值。
heart-beat-timeout服务端没有接受到客户端心跳请求就将其设为不健康的时间间隔,默认为15s。
注:推荐值该值为15s即可,如果有的业务线希望服务下线或者出故障时希望尽快被发现,可以适当减少该值。
ip-delete-timeoutip删除超时。 时间单位:毫秒。
instance-enabled是否启用实例以接受请求。 默认值是true。
ephemeral实例是否是短暂的。默认值为true

其他参数配置

参数描述
com.alibaba.nacos.naming.log.levelNaming客户端的日志级别,改属性通过客户端启动时通过命令行加参数指定。
注:默认为info
com.alibaba.nacos.naming.cache.dir客户端缓存目录,默认值:{user.home}/nacos/naming
com.alibaba.nacos.client.naming.tls.enable是否打开HTTPS,默认值:false
namingLoadCacheAtStart启动时是否优先读取本地缓存,默认值:false
namingCacheRegistryDir指定缓存子目录,位置为 …/nacos/{SUB_DIR}/naming
namingClientBeatThreadCount客户端心跳的线程池大小
namingPollingThreadCount客户端定时轮询数据更新的线程池大小

参考文档:
Nacos 系统参数介绍

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Spring Cloud Nacos是Spring Cloud生态体系中的一个组件,它提供了一种动态服务发现、配置管理和服务管理的解决方案。下面是如何在Spring Cloud应用程序中使用Nacos作为配置中心的步骤: 1. 添加依赖 在pom.xml中添加以下依赖: ``` <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId> </dependency> ``` 2. 配置bootstrap.properties 在Spring Cloud应用程序的classpath下创建bootstrap.properties文件,并添加以下配置: ``` spring.cloud.nacos.config.server-addr = localhost:8848 spring.cloud.nacos.config.namespace = your-namespace spring.cloud.nacos.config.group = your-group spring.cloud.nacos.config.prefix = your-prefix spring.cloud.nacos.config.file-extension = properties ``` 其中,`server-addr`指定了Nacos服务端的地址和端口,`namespace`指定了命名空间,`group`指定了配置所属的分组,`prefix`指定了配置的前缀,`file-extension`指定了配置文件的后缀名。 3. 配置中心添加配置Nacos配置中心添加配置,例如,在命名空间为`your-namespace`,分组为`your-group`,前缀为`your-prefix`的配置中心中添加一个名为`config.properties`的配置文件,内容如下: ``` key=value ``` 4. 读取配置 在需要使用配置的地方,可以通过`@Value`注解或`Environment`对象来读取配置,例如: ``` @Value("${key}") private String value; @Autowired private Environment env; ... String value = env.getProperty("key"); ``` 这样就可以在Spring Cloud应用程序中使用Nacos作为配置中心了。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值