【微服务】springboot怎么注册到Nacos?

475 阅读2分钟

什么是Nacos?

  1. 动态配置服务

动态配置服务让您能够以中心化、外部化和动态化的方式管理所有环境的配置。动态配置消除了配置变更时重新部署应用和服务的需要。配置中心化管理让实现无状态服务更简单,也让按需弹性扩展服务更容易。

  1. 服务发现及管理

动态服务发现对以服务为中心的(例如微服务和云原生)应用架构方式非常关键。Nacos支持DNS-Based和RPC-Based(Dubbo、gRPC)模式的服务发现。Nacos也提供实时健康检查,以防止将请求发往不健康的主机或服务实例。借助Nacos,您可以更容易地为您的服务实现断路器。

  1. 动态DNS服务

通过支持权重路由,动态DNS服务能让您轻松实现中间层负载均衡、更灵活的路由策略、流量控制以及简单数据中心内网的简单DNS解析服务。动态DNS服务还能让您更容易地实现以DNS协议为基础的服务发现,以消除耦合到厂商私有服务发现API上的风险。

在这里插入图片描述

官网地址:nacos.io/zh-cn/

配置Nacos

  1. 下载Nacos

访问 https://github.com/alibaba/nacos/releases
下载 nacos-server-2.0.3.zip
解压到某个目录
  1. Nacos支持三种部署模式
  • 单机模式 - 用于测试和单机试用。
  • 集群模式 - 用于生产环境,确保高可用。
  • 多集群模式 - 用于多数据中心场景。

Linux/Unix/Mac

# Standalone means it is non-cluster Mode.
$ sh startup.sh -m standalone

Windows

# Standalone means it is non-cluster Mode.
$ cmd startup.cmd -m standalone
  1. 单机模式支持mysql

在0.7版本之前,在单机模式时nacos使用嵌入式数据库实现数据的存储,不方便观察数据存储的基本情况。0.7版本增加了支持mysql数据源能力,具体的操作步骤:

1.安装数据库,版本要求:5.6.5+ 2.初始化mysql数据库,数据库初始化文件:mysql-schema.sql 3.修改conf/application.properties文件,增加支持mysql数据源配置(目前只支持mysql),添加mysql数据源的url、用户名和密码。

spring.datasource.platform=mysql

db.num=1
db.url.0=jdbc:mysql://11.162.196.16:3306/nacos_devtest?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true
db.user=nacos_devtest
db.password=youdontknow

再以单机模式启动nacos,nacos所有写嵌入式数据库的数据都写到了mysql

在这里插入图片描述

SpringBoot单体项目注册到Nacos

在SpringBoot项目里引入nacos-discovery的依赖,版本号要与你的SpringBoot版本相近。

		<dependency>
            <groupId>com.alibaba.cloud</groupId>

            <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>

            <version>2.2.5.RELEASE</version>

        </dependency>

然后在 在SpringBoot项目yml里配置服务注册信息

#为服务命名
spring.application.name=xxx-biz-provider
#指定服务注册中心的地址
spring.cloud.nacos.discovery.server-addr=192.168.22.47:8989
spring.cloud.nacos.discovery.namespace=public
spring.cloud.nacos.discovery.username=nacos
spring.cloud.nacos.discovery.password=nacos

在这里插入图片描述

“开启掘金成长之旅!这是我参与「掘金日新计划 · 2 月更文挑战」的第 8 天,点击查看活动详情