【SpringCloud系列】 Nacos 使用及服务注册

1,075 阅读1分钟

下载地址:github.com/alibaba/nac…

image-20210720112631125

官方文档地址:nacos.io/zh-cn/docs/…

配置mysql数据库

  • 执行${NACOS_HOME}/conf文件下nacos-mysql.sql初始化
  • 修改${NACOS_HOME}/conf文件夹下application.properties文件,增加mysql数据库配置
spring.datasource.platform=mysql
db.num=1
db.url.0=jdbc:mysql://127.0.0.1:3306/trs_cloud_config?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC
db.user.0=root
db.password.0=rootroot

启动nacos服务

进入${NACOS_HOME}/bin文件夹下,目录路径下输入cmd,再输入如下启动命令

startup.cmd -m standalone

或者在startup.cmd文件修改启动模式改为standalone,之后能双击startup.cmd

set MODE="standalone"

服务启动之后,可通过http://127.0.0.1:8848/nacos访问nacos控制台,控制台主要用于增强对服务列表、健康状态管理、服务治理、分布式配置管理等方面的管控,进一步帮助开发者降低管理微服务应用架构的成本。

nacos服务注册

nacos提供了SDK及Open Api请求方式来完成服务注册与发现等操作,由于服务端只提供了REST接口,所以SDK本质上是对于HTTP请求的封装。

注册实例

将服务地址消息注册到Nacos Server上

OPAPI: /nacos/v1/ns/instance(POST)
SDK:
void registerInstance(String serviceName,String ip,in port) throws NacosException;
void registerInstance(String serviceName,String ip,in port,String clusterName) throws NacosException;
void registerInstance(String serviceName,Instance instance) throws NacosException;

相关参数说明:

  • serviceName:服务名称

  • ip:服务实例IP

  • port:服务实例端口号

  • clusterName:集群名称,标识该服务实例属于哪个集群下

  • instance:实例属性,把ip、port、clusterName这些参数封装成一个对象。

调用方式:

NamingService namingService=NamingFactory.createNamingService(Systm.getProperty("serverAddr"));
namingService.registerInstance("server1","127.0.0.1",9090,"DEFAULT");