注册中心简介
-
通过注册中心可以对服务提供方和服务消费方进行解耦。具体的工作模式如下图所示:
-
工作流程说明:
1、服务提供方在启动的时候,会向注册中心注册自己服务的详情信息(ip、端口号等)。在注册中心中会维护一张服务清单,保存这些注册信息,注册中心需要以心跳的方式去监测清单中的服务是否可用,如果不可用,需要在服务清单中剔除不可用的服务。
2、服务消费方向服务注册中心咨询服务,并获取所有服务的实例清单,然后按照指定的负载均衡算法从服务清单中选择一个服务实例进行访问。
-
Nacos官网地址:Redirecting to: https://nacos.io/
Nacos是 Dynamic Naming and Configuration Service的首字母简称,一个更易于构建云原生应用的动态服务发现、配置管理和服务管理平台。
Nacos 致力于帮助您发现、配置和管理微服务。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据及流量管理。
-
Nacos的优点包括:
1、高可用性:Nacos支持多节点部署,通过选举算法实现了高可用和故障转移能力,在节点宕机或网络异常情况下仍能保证整个系统的稳定运行。
2、动态扩展性:Nacos可以根据实际需求进行快速扩展和缩容,支持集群、多数据中心、地域感知等特性。
3、完备的功能支持:Nacos支持服务注册与发现、配置管理、流量管理、DNS解析、存储KV对等功能,并且提供了Web界面和RESTful API等多种方式来使用这些功能。
4、易于集成:Nacos提供了多种语言和框架的集成方案,并且支持Spring Cloud等流行的微服务框架。
总的来说,Nacos是一个功能齐全、易于使用和高可用的分布式服务治理平台,可以为分布式系统提供高效、稳定的运行环境。
Nacos安装
1 使用docker安装Nacos
主要给搭建演示一下如下使用Docker来部署Nacos Server。Docker部署Nacos的项目命令如下所示:
# 拉取镜像
docker pull nacos/nacos-server:v2.2.2
# 创建容器
docker run --name nacos -e MODE=standalone -p 8848:8848 -p 9848:9848 -d nacos/nacos-server:v2.2.2
# nacos2.x的版本新增了一个客户端与服务端的gRpc的通讯端口号9848
打开浏览器访问nacos的所提供的后端管理界面:http://主机号:8848/nacos
登录成功以后会进入到nacos的主页面:
如果可以看到上述界面,就说明nacos的环境搭建好了
2 Windows环境安装Nacos
-
下载Nacos安装文件
-
解压Nacos安装文件到没有中文和空格目录
-
进入bin目录,使用cmd打开,通过命令启动Nacos服务
startup.cmd -m standalone
-
打开浏览器访问nacos的所提供的后端管理界面:http://localhost:8848/nacos
用户名和密码:nacos/nacos,登录成功以后会进入到nacos的主页面
微服务集成naocs
需求:将service-product微服务注册到nacos中
实现步骤:
1、引入如下依赖
<!-- nacos作为注册中心的依赖 -->
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
</dependency>
2、在application.yml文件中添加如下配置
spring:
application:
name: service-product
cloud:
nacos:
discovery:
server-addr: localhost:8848
3、启动微服务:就可以在nacos的后台管理系统中,看到如下的注册信息: