Windows10环境安装nacos
1.下载nacos 1.4.2
下载地址:https://nacos.io/zh-cn/index.html
版本号 | 下载地址 |
---|---|
2.0.1 | https://github.com/alibaba/nacos/releases/tag/2.0.1 |
1.4.2 | https://github.com/alibaba/nacos/releases/tag/1.4.2 |
1.3.2 | https://github.com/alibaba/nacos/releases/tag/1.3.2 |
2.解压安装
3.修改配置
进入conf目录,修改application.properties
4.新建数据库
新建mysql数据库并执行nacos中conf目录下的的sql语句
6.启动nacos
进入bin目录cmd
startup.cmd -m standalone
Nacos常用命令
命令 | 描述 |
---|---|
startup.cmd -m standalone | 启动 nacos,使用默认端口和Standalone模式。 |
startup.cmd -m cluster | 启动 nacos,使用默认端口和Cluster模式。 |
shutdown.cmd | 关闭 nacos 命令行。 |
nacos-cli.sh 或 nacos-cli.cmd | 用于启动 nacos-cli 命令行工具。 |
nacos-import-dev.yaml -t localhost:8848 | 导入配置文件到 nacos 的 dev 环境中。 |
nacos-export-dev.yaml -t localhost:8848 | 导出 nacos dev 环境的所有配置文件。 |
nacos-sync-dev.yaml -t localhost:8848 | 将 nacos dev 环境的配置同步到指定的其他环境。 |
nacos-monitor.sh start 或 nacos-monitor.cmd | 启动 nacos monitor 监控服务。 |
status.cmd | 查看 nacos 的服务状态。 |
7.进入nacos管理控制台
浏览器访问:http://localhost:8848/nacos
账号/密码: nacos/nacos
配合Spring Cloud的微服务示例
假设我们有一个基于 Spring Cloud 构建的微服务系统,其中包含以下几个服务:
- 注册中心:使用 Nacos 作为注册中心。
- 网关服务:使用 Spring Cloud Gateway 实现 API 网关。
- 业务服务:提供一些业务接口,供客户端调用。
依赖配置
在每个服务的 pom.xml 文件中添加如下依赖:(依赖是 Spring Cloud Alibaba Nacos Config 组件的核心依赖,它将自动集成 Nacos Config 功能,从而实现对配置信息的统一管理。)
org.springframework.cloud spring-cloud-starter-alibaba-nacos-config 2.2.6.RELEASE
配置文件
在每个服务的 application.yml 文件中添加如下配置:
# 使用 Nacos 作为配置中心
spring:
application:
name: service-product
cloud:
nacos:
config:
server-addr: localhost:8848 # nacos的服务端地址
file-extension: yaml # 配置文件格式
profiles:
active: dev # 环境标识
上述配置表示使用 Nacos 作为配置中心,在初始化时将会自动从 Nacos 服务器拉取指定的配置信息,并将其转换为 Spring Boot 配置属性。
其中,${nacos.server-addr}
表示 Nacos 服务器地址,可以在应用启动前通过 -D
参数进行指定;${spring.application.name}
则表示当前服务的名称,这个属性会在后面的配置文件中使用到。
示例代码
以业务服务为例,代码如下:(两种方法,推荐第二种注解的方式。)
package com.dengxiyan.shopproduct.controller;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.cloud.context.config.annotation.RefreshScope;
import org.springframework.context.ConfigurableApplicationContext;
import org.springframework.web.bind.annotation.*;
@RestController
@RequestMapping("/nacos-config")
@RefreshScope
public class NacosConfigController {
@Autowired
private ConfigurableApplicationContext applicationContext;
//1 硬编码方式
@GetMapping("/test1")
public String nacosConfingTest1() {
return applicationContext.getEnvironment().getProperty("config.appName");
}
@Value("${config.appName}")
private String appName;
//2 注解方式
@GetMapping("/test2")
public String nacosConfingTest2() {
return appName;
}
}
上述代码是一个简单的控制器类,用于返回指定 ID 的用户信息。其中,${server.port}
是一个配置属性,它会在应用启动时自动从 Nacos 服务器拉取,并赋值给 port
变量。
验证结果
启动所有服务后,我们可以通过以下步骤验证结果:
- 访问 Nacos 控制台,查看业务服务的配置信息是否已经成功注册到 Nacos 服务器上。
- 访问网关服务的接口,观察请求是否正确路由到了业务服务上,并返回了正确的结果。
通过这个例子,我们可以看到 Nacos 在微服务中的应用非常广泛,它提供了灵活的配置管理、服务发现和健康检查等功能,帮助开发者快速构建可靠的分布式系统。
- 本文标签: 工具 部署
- 本文链接: http://www.92cxy.cn/article/101
- 版权声明: 本文由王小东原创发布,转载请遵循《署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0)》许可协议授权