Spring Cloud / Alibaba 微服务架构 | 2021年11月更文挑战(26)

这是我参与11月更文挑战的第24天,活动详情查看:2021最后一次更文挑战

Alibab Nacos Client 服务注册与发现

多个 Nacos Service 节点相互之间连接通信构成了Nacos集群。Nacos Client 将自身的元数据注册到 Nacos Service上去,即服务注册。同时他们也从Nacos Service上去寻找其他微服务,即服务发现。Nacos单机版与集群版本在使用上基本没有区别,只不过是配置节点数是单个还是多个的区别。

构建验证子模块

该子模块并不属于功能微服务之一,不是网关也不是任何一个功能的微服务,只是为了之后我们项目引入一些我们不了解的组件时需要学习、概念验证、测试其可用性而存在。

1、创建子模块e-commerce-alibaba-nacos-client

同样先选择maven项目,然后命名即可。

image.png

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)编写代码

image.png

image.png

2)编写脚本测试

如果有安装REST Client plugin插件,则可以直接在IDEA中编写脚本测试。

image.png

### 查询服务实例信息
GET http://127.0.0.1:8000/ecommerce-nacos-client/nacos-client/service-instance
Accept: application/json
复制代码
复制代码

或在postman等工具调用接口,返回结果就是之前我们定义好的通用响应对象。

image.png

至此我们已经实现了服务注册与服务发现功能。

Guess you like

Origin juejin.im/post/7034531964245770248