Nacos注册中心微服务注册

微服务工作流程简介

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是一个功能齐全、易于使用和高可用的分布式服务治理平台,可以为分布式系统提供高效、稳定的运行环境。

虚拟机docker拉取现在下载

html 复制代码
# 拉取镜像
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://你的虚拟机ip地址:8848/nacos

登录成功以后会进入到nacos的主页面:

Windows环境安装Nacos

在官网选择上方的下载,查看nacos的发布历史记录下的2.2.2版本进行下载,解压的目录必须是没有中文且没有空格的目录

下载好后进行解压,打开解压后的文件,点击bin文件在地址栏里面输入cmd命令,打卡命令提示符页面后输入 'startup.cmd - m standalone'

startup.cmd也就是运行脚本

-m 表示启动的模式

standalone单例启动

这个代表启动成功。

使用Nacos

先导入依赖

html 复制代码
<!-- nacos作为注册中心的依赖 -->
<dependency>
    <groupId>com.alibaba.cloud</groupId>
    <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
</dependency>

yml文件中的配置

html 复制代码
spring:
  application:
    name: service-product
  cloud:
    nacos:
      discovery:
        server-addr: localhost:8848

如果使用的是虚拟机则将localhost替换为你的虚拟机ip地址,上面的name是启动项目的名称,也就是你这个项目或者子项目的名称。

之后启动你的项目,启动完成后如果出现了以下部分则表示注册成功

打开你的nacos主页,点击服务管理下的服务列表,可以看的你刚刚注册成功的服务。

相关推荐
爱学习的小囧2 分钟前
VMware ESXi 6.7U3v 新版特性、驱动集成教程和资源包、部署教程及高频问答详情
运维·服务器·虚拟化·esxi6.7·esxi蟹卡驱动
小疙瘩6 分钟前
只是记录自己发布若依分离系统到linux过程中遇到的问题
linux·运维·服务器
dldw77744 分钟前
IE无法正常登录windows2000server的FTP服务器
运维·服务器·网络
阿里加多1 小时前
第 4 章:Go 线程模型——GMP 深度解析
java·开发语言·后端·golang
likerhood1 小时前
java中`==`和`.equals()`区别
java·开发语言·python
运维有小邓@1 小时前
什么是重放攻击?如何避免成为受害者?
运维·网络·安全
小小李程序员1 小时前
Langchain4j工具调用获取不到ThreadLocal
java·后端·ai
zs宝来了2 小时前
AQS详解
java·开发语言·jvm
汤愈韬2 小时前
下一代防火墙通用原理
运维·服务器·网络·security
IMPYLH2 小时前
Linux 的 od 命令
linux·运维·服务器·bash