微服务 服务注册中心Nacos

一、前言

Nacos可以做服务注册发现和配置中心。

微服务的核心就是服务注册中心,一个服务去调用另一个服务,是怎么去找到另一个服务的?首先所有的服务都需要注册到注册中心,然后服务调用方根据服务名称在注册中心去找另一个服务。注册中心就提供服务注册和服务发现的功能。

服务注册中心历史上有用ZooKeeper、Eureka。但是我们选用Nacos,一是它是阿里出品,二是它经历过阿里项目的历练,三是它除了做服务注册还可以做配置中心,而且它相对来说简单。如果是新项目建议使用Nacos。

Nacos官网:https://nacos.io/zh-cn/index.html

二、下载运行

下载地址:https://github.com/alibaba/nacos/releases

下载解压后在bin目录下

mac运行

sh startup.sh -m standalone

windows运行

startup.cmd -m standalone

访问路径:http://localhost:8848/nacos 默认账号和密码都是nacos
在这里插入图片描述

三、项目代码

3.1 代码结构

在这里插入图片描述

  • 说明:这里是多模块项目,一个parent模块,一个consume模块,parent是做包版本号管理。

3.2 Nacos创建命名空间

在这里插入图片描述

3.3 添加依赖

pom.xml添加下面依赖

<dependency>
    <groupId>com.alibaba.cloud</groupId>
    <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
</dependency>

完整pom.xml如下

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
    <parent>
        <groupId>com.llh</groupId>
        <artifactId>parent</artifactId>
        <version>1.0.0</version>
        <relativePath/>
    </parent>

    <modelVersion>4.0.0</modelVersion>
    <artifactId>consumer</artifactId>
    <version>1.0.0</version>
    <name>consumer</name>
    <description>consumer description</description>

    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>

        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
        </dependency>
    </dependencies>
</project>


3.4 application.properties
# 应用相关
spring.application.name=consumer
server.port=8888

# nacos服务注册相关
spring.cloud.nacos.discovery.username=nacos
spring.cloud.nacos.discovery.password=nacos
spring.cloud.nacos.discovery.server-addr=http://localhost:8848
spring.cloud.nacos.discovery.namespace=c7f6a654-209e-4cc1-8c1d-1971aca64620
  • 说明:这里的spring.cloud.nacos.discovery.namespace就是前面创建的命名空间id

3.5 运行

运行consumer模块,然后在Nacos后台界面服务管理->服务列表就可以看到注册的服务了
在这里插入图片描述

指定端口,运行两个实例
在这里插入图片描述

在这里插入图片描述

然后在Nacos后台就可以看到两个服务实例数量了。

四、结语

源码地址:https://github.com/tigerleeli/xiaohuge-blog/tree/master/spring-cloud-alibaba-registry

同步微信公众号:小虎哥的技术博客
在这里插入图片描述

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小虎哥的技术博客

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值