Nacos是一个开源的动态服务发现、配置和服务管理平台,由阿里巴巴开发和维护。
Nacos支持多种注册中心和配置管理器,包括Spring Cloud Discovery、Dubbo、Kubernetes和Apache ServiceComb等。
Nacos提供了REST、gRPC和Java SDK等多种API,使得开发人员可以轻松地与Nacos进行交互
Nacos = Spring Cloud Eureka + Spring Cloud Config
Nacos 可以与 Spring, Spring Boot, Spring Cloud 集成,并能代替 Spring Cloud Eureka, Spring Cloud Config。
首先,你需要下载Nacos的安装包,你可以从Nacos的官方网站上下载:https://github.com/alibaba/nacos/releases(我用的是1.4.1的版本)
解压下载的安装包,进入解压后的目录。
端口配置
Nacos的默认端口是8848,如果你电脑上的其它进程占用了8848端口,请先尝试关闭该进程。
如果无法关闭占用8848端口的进程,也可以进入nacos的conf目录,修改配置文件中的端口:
运行bin目录下的startup.sh(Linux/MacOS)或startup.cmd(Windows)脚本,启动Nacos服务。
然后 cmd 进入该目录执行命令即可:
startup.cmd -m standalone
打开浏览器,访问http://localhost:8845/nacos,如果能够看到Nacos的登录页面,则说明Nacos已经成功安装并启动。
默认的账户和密码均为:nacos
第一次使用时,不存在任何信息,图中数据忽略不计😂
Nacos是一种服务注册和发现的工具,可以帮助我们管理微服务架构中的组件。下面是使用Nacos进行服务注册和发现的基本步骤:
在应用程序中添加Nacos客户端依赖项,例如在Maven项目中添加以下依赖项:
父工程:
com.alibaba.cloud spring-cloud-alibaba-dependencies 2.2.5.RELEASE pom import
客户端:
com.alibaba.cloud spring-cloud-starter-alibaba-nacos-discovery
在应用程序中添加Nacos客户端配置,例如在Spring Boot应用程序中,可以在application.properties文件中添加以下配置:
#nacos服务地址 我的是8845端口 spring.cloud.nacos.discovery.server-addr=127.0.0.1:8845 #服务名(该服务创建成功后为与public下) spring.cloud.nacos.discovery.namespace=your-namespace
其中server-addr是Nacos服务器的地址和端口号,namespace是Nacos的命名空间,用于隔离不同的环境。
在应用程序中添加服务注册和发现的注解,例如在Spring Boot应用程序中,可以使用@EnableDiscoveryClient注解启用服务注册和发现功能。
@SpringBootApplication @EnableDiscoveryClient public class Application { public static void main(String[] args) { SpringApplication.run(Application.class, args); } }
在应用程序中注册服务,例如在Spring Boot应用程序中,可以使用@RestController注解定义一个RESTful服务。
@RestController public class HelloController { @GetMapping("/hello") public String hello() { return "Hello, world!"; } }
在Nacos控制台中查看已注册的服务,可以在浏览器中访问http://localhost:8845/nacos/index.html,并使用Nacos的默认用户名和密码登录。