之前说的dubbo官网指定的注册中心的zookeeper,现在我们说一下更加常用的nacos.
nacos: 它是专注于服务发现和配置管理领域的一个阿里项目。nacos可以跟很多技术 进行整合的,我就说一下比较常用的整合吧。
前期准备:下载nacos服务,直接解压就好了。
nacos下载
注意点:
如果你使用的是最近比较新的版本可能会报错,比如2.0.3
推荐使用命令启动:startup.cmd -m standalone
如果你想直接双击就启动,推荐使用版本nacos-server-1.1.3
**
Springcloud与nacos整合
添加依赖
com.alibaba.cloud spring-cloud-starter-alibaba-nacos-config ${latest.version} com.alibaba.cloud spring-cloud-starter-alibaba-nacos-discovery 0.2.2.RELEASE com.alibaba.nacos nacos-client 1.1.0
添加配置
# 服务方的配置
server:
port: 8000
spring:
cloud:
nacos:
discovery:
server-addr: 127.0.0.1:8848 # 配置nacos 服务端地址
application:
name: nacos-provider # 服务名称
# 消费方的配置
server:
port: 9000
spring:
cloud:
nacos:
discovery:
server-addr: 127.0.0.1:8848 # 配置nacos 服务端地址
application:
name: nacos-consumer # 服务名称
添加注解
在启动类的位置上加上注解:@EnableDiscoveryClient
核心代码
dubbo与nacos整合
添加依赖
com.example common-api 0.0.1-SNAPSHOT org.springframework.boot spring-boot-starter-web org.apache.dubbo dubbo 2.7.3 org.apache.dubbo dubbo-registry-nacos 2.7.3 org.apache.dubbo dubbo-spring-boot-starter 2.7.1 com.alibaba.nacos nacos-client 1.3.1 org.projectlombok lombok true org.springframework.boot spring-boot-starter-test test
dubbo中配置nacos的信息
## 其他属性保持不变
server:
port: 8082
dubbo:
registry:
address: nacos://127.0.0.1:8848
application:
name: nacos-provider-application
启动类上加上注解@EnableDubbo
重启你的dubbo即可。
访问你的nacos地址为:localhost:8848/nacos 账户密码:默认为nacos
其实它dubbo整合的方法是一样的 只是换了注册中心的地址而已。
nacos作为注册中心源码
nacos的其他概念
命名空间
你可能会在配置文件中看到一个namespace的属性,这个就是命名空间,你可以将它理解成一个不同的饭店,不同的饭店可以存在相同的门牌号(相同的Group或Data ID)常常开发的时候,我们会有不同的环境,比如开发环境,生产环境什么的,我们可以通过这个命名空间进行区别.服务名
服务提供的标志,说白了就是相当与服务的唯一标识,就像数据库中的主键一样。注册中心
存储服务实例和服务负载均衡策略的数据库,说白了就是你写的服务,会 生成一个实例,这个实例放的位置就是我们的注册中心。服务提供方和服务消费方
就是我们提供可复用和可调用服务的应用方,而消费方就是我们对于我们注册的服务方发起调用的应用方,我们的使用都是基于这两个的。



