这是我参与11月更文挑战的第24天,活动详情查看:2021最后一次更文挑战。
Alibab Nacos Client 服务注册与发现
多个 Nacos Service 节点相互之间连接通信构成了Nacos集群。Nacos Client 将自身的元数据注册到 Nacos Service上去,即服务注册。同时他们也从Nacos Service上去寻找其他微服务,即服务发现。Nacos单机版与集群版本在使用上基本没有区别,只不过是配置节点数是单个还是多个的区别。
构建验证子模块
该子模块并不属于功能微服务之一,不是网关也不是任何一个功能的微服务,只是为了之后我们项目引入一些我们不了解的组件时需要学习、概念验证、测试其可用性而存在。
1、创建子模块e-commerce-alibaba-nacos-client
同样先选择maven项目,然后命名即可。
2、修改pom文件
具体修改之后会上传到仓库。
3、创建启动类
对每一个Spring Cloud工程来说,每一个子工程都是一个Spring Boot应用,对于每个Spring Boot应用来说都需要有一个工程启动入口Application。
1)添加两个注解:
a)@EnableDiscoveryClient
使其能实现服务发现和服务注册。
b)@SpringBootApplication
将当前工程标志为一个Spring Boot应用。
2)编写main方法
通过SpringApplication的run方法(静态方法)去启动。
4、配置工程
配置工程端口号、上下文路径、Nacos Service的地址让它能够实现服务注册和服务发现。
在resource下创建一个文件,bootstrap.yml。
启动项目后查看服务是否有成功注册。
5、创建类实现服务发现
1)编写代码
2)编写脚本测试
如果有安装REST Client plugin插件,则可以直接在IDEA中编写脚本测试。
### 查询服务实例信息
GET http://127.0.0.1:8000/ecommerce-nacos-client/nacos-client/service-instance
Accept: application/json
复制代码
复制代码
或在postman等工具调用接口,返回结果就是之前我们定义好的通用响应对象。
至此我们已经实现了服务注册与服务发现功能。