Nacos简单配置

本文详细介绍了Nacos的配置过程,包括Nacos的安装、服务注册、配置中心的设置、DataId与group的使用、命名空间的概念以及配置的持久化到MySQL数据库。通过这些步骤,演示了如何在Spring Cloud环境中使用Nacos作为注册中心和配置中心。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Nacos 的配置

1. Nacos的安装
  • windows版本在官网下载:https://github.com/alibaba/nacos

    下载运行bin目录下的startup.cmd 打开显示

密码账号默认:nacos

2. 服务的注册

​ springcloud 文档:https://spring-cloud-alibaba-group.github.io/github-pages/hoxton/en-us/index.html

​ 首先父引入pom

<dependencyManagement>
    <dependencies>
        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-alibaba-dependencies</artifactId>
            <version>2.1.1.BUILD-SNAPSHOT</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>
    </dependencies>
</dependencyManagement>

子模块:

<dependency>
    <groupId>com.alibaba.cloud</groupId>
    <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
</dependency>

yml:

server:
  port: 8004

spring:
  application:
    name: cloud-provider-payment
  cloud:
    nacos:
      discovery:
        server-addr: 127.0.0.1:8848
management:
  endpoints:
    web:
      exposure:
        include: '*'

启动以后的结果:

同时创建module8005 : 运行

负载均衡功能的验证

创建订单模块:创建简单rest工具类

/**
 * @time 2020/7/11 17:58
 * @Author gp
 * 通信工具类
 */
@Component
public class RestTemplateConfig {
	@Bean
    @LoadBalanced
	//@LoadBalanced 开启负载均衡
	public RestTemplate restTemplate(){
		return  new RestTemplate();
	}
}

调用服务提供者的地址:

	/**
	 * 注冊eureka以後  需要使用注冊 的服务名称
	 */
	String url="http://cloud-provider-payment/";

	@Autowired
	RestTemplate restTemplate;
	@GetMapping("/test")
	public String test(){
		String forObject = restTemplate.getForObject(url+"echo/aaa", String.class);
		return forObject;
	}

在这里插入图片描述

由于nacos 依赖自带了ribbon,netflix 不需要自己引入,由于使用了ribbon需要创建rest风格的接口对cloud-provider-payment下的接口进行调用

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

以上实现了 注册中心和负载均衡的功能:

3.配置中心

pom:

		<!--引入config 依赖-->
		<dependency>
			<groupId>com.alibaba.cloud</groupId>
			<artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
		</dependency>
		<dependency>
			<groupId>com.alibaba.cloud</groupId>
			<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
		</dependency>

yml:创建bootstrap.yml

spring地址:https://spring-cloud-alibaba-group.github.io/github-pages/hoxton/en-us/index.html

server:
  port: 3377

spring:
  application:
    name: cloud-nacos-client
  cloud:
    nacos:
      discovery:
        server-addr: 127.0.0.1:8848 #作为注册中心
      config:
        server-addr: 127.0.0.1:8848 #作为配置中心
        #文件格式yml
        file-extension: yaml
#配置中心命名规则 名称一定要yaml 不能省略为yml
#${prefix}-${spring.profile.active}.${file-extension}
#  cloud-nacos-client-dev.yaml

测试接口:

@Value("${config.info}")
	private String configInfo;

	@RequestMapping("/config/info")
	public String getConfigInfo(){
		return configInfo;
	}
}

新增配置:

调用接口结果

这样就实现简单配置中心的实现。

  • 后面内容逐渐补充
4.DataId添加配置 (可查看官网)

可以指定spring.profile.active 和配置文件的dataId来加载不同环境,在进行config配置时 我们进行了名称的配置 通过不同的名称获取不同的配置,可以通过修改 配置环境 来实现各个环境的加载。

5.group 分组

通过不同的分组切换不同的 配置环境,group: DEFAULT_GROUP

6.命名空间

namespace: xxxxxxxx 和dataId group 可以理解为三层文件夹 暂时理解是 区分不同的配置文件,方便管理

7.nacos 配置的持久化

nacos 使用内嵌的数据库,支持将内嵌数据库数据改为mysql数据库,需要在conf 下的配置文件修改添加信息

// 使用mysql数据库
spring.datasource.platform=mysql

db.num=1
db.url.0=jdbc:mysql://127.0.0.1:3306/nacos_config?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true
db.user=root
db.password=123456

以后配置信息就会持久到mysql数据库 ,在添加之前需要创建mysql的库表,文件在conf 下的nacos-mysql.sql

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值