将这个包解压到任意非中文目录下,如图:
目录说明:
-
bin:启动脚本
-
conf:配置文件
Nacos的默认端口是8848,如果你电脑上的其它进程占用了8848端口,请先尝试关闭该进程。
如果无法关闭占用8848端口的进程,也可以进入nacos的conf目录,修改配置文件中的端口:
启动非常简单,进入bin目录,结构如下:
cmd窗口输入:
startup.cmd -m standalone
执行后的效果如图:
访问:http://localhost:8848/nacos(默认登录账户密码都是nacos)
1-2 服务注册到nacos
Nacos是SpringCloudAlibaba的组件,而SpringCloudAlibaba也遵循SpringCloud中定义的服务注册、服务发现规范。因此使用Nacos和使用Eureka对于微服务来说,并没有太大区别
主要差异在于:
-
依赖不同
-
服务地址不同
引入依赖
在cloud-demo
父工程的pom文件中的<dependencyManagement>
中引入SpringCloudAlibaba
的依赖:
com.alibaba.cloud
spring-cloud-alibaba-dependencies
2.2.6.RELEASE
pom
import
然后在user-service
和order-service
中的pom文件中引入nacos-discovery
依赖(记得注释eureka-client
依赖):
com.alibaba.cloud
spring-cloud-starter-alibaba-nacos-discovery
配置nacos地址
在user-service
和order-service
的application.yml
中添加nacos
地址(记得注释掉eureka
的地址):
spring:
cloud:
nacos:
server-addr: localhost:8848
重启
重启微服务后,登录nacos管理页面,可以看到微服务信息:
1-3 服务分级存储模型
一个服务可以有多个实例,例如我们的user-service,可以有:
-
127.0.0.1:8081
-
127.0.0.1:8082
-
127.0.0.1:8083
假如这些实例分布于全国各地的不同机房,例如:
-
127.0.0.1:8081,在上海机房
-
127.0.0.1:8082,在上海机房
-
127.0.0.1:8083,在杭州机房
Nacos就将同一机房内的实例 划分为一个集群
也就是说,user-service是服务,一个服务可以包含多个集群,如杭州、上海,每个集群下可以有多个实例ÿ