SpringCloud服务治理之Nacos

文章目录

    • 一、Nacos概述
    • 二、安装与启动
    • 三、服务注册
      • 3.1 引入nacos依赖
      • 3.2 配置nacos地址
    • 四、项目测试源码


一、Nacos概述

Nacos是阿里巴巴开源的服务注册中心,官方文档:https://nacos.io/zh-cn/docs/what-is-nacos.html

从个人使用体验上看,nacos要比eureka和consul舒服不少。

Nacos 致力于帮助您发现、配置和管理微服务。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据及流量管理。

服务(Service)是 Nacos 世界的一等公民。Nacos 支持几乎所有主流类型的“服务”的发现、配置和管理:

Kubernetes Service

gRPC & Dubbo RPC Service

Spring Cloud RESTful Service

下面介绍如何安装和启动nacos,以及如何将服务注册到nacos:


二、安装与启动

参考:https://nacos.io/zh-cn/docs/quick-start.html

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

从git上下载压缩包,解压,可以看到如下:

SpringCloud服务治理之Nacos_第1张图片

双击startup.cmd启动,在win下打开命令行输入cmd shutdown.cmd也可以启动。

启动完,可以看到如下页面:

SpringCloud服务治理之Nacos_第2张图片

打开浏览器,输入http://localhost:8848/nacos,进入登录页:

SpringCloud服务治理之Nacos_第3张图片

输入默认用户名nacos与密码nacos,登录:

SpringCloud服务治理之Nacos_第4张图片


三、服务注册

SpringCloud服务注册与配置参考:https://nacos.io/zh-cn/docs/quick-start-spring-cloud.html

也可以参考我的配置:

3.1 引入nacos依赖

创建一个SpringBoot项目,添加如下依赖:

	<properties>
        <java.version>1.8java.version>
        <nacos.version>0.9.0.RELEASEnacos.version>
    properties>

    <dependencies>
        <dependency>
            <groupId>org.springframework.bootgroupId>
            <artifactId>spring-boot-starter-webartifactId>
        dependency>

        
        <dependency>
            <groupId>org.springframework.cloudgroupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-discoveryartifactId>
            <version>${nacos.version}version>
        dependency>
    dependencies>

注:这里使用SpringBoot2.1.X版本。需要注意的是,我这里没有引入SpringCloud,这个比较奇怪,nacos-discovery会自动导入cloud相关的包。嗯,以防万一,我们还是加上SpringCloud的配置吧。

3.2 配置nacos地址

server:
  port: 8200
spring:
  application:
    name: service-producer
  cloud:
    nacos:
      discovery:
        server-addr: 127.0.0.1:8848

到此,基本配置已经完成,使用@EnableDiscoveryClient来启用微服务后,这个项目就会被注册到nacos中,可以通过nacos可视化页面里的菜单项——服务列表进行查看。

我这里像之前一样,分别创建service-producer和service-consumer两个项目,分别启动后:

SpringCloud服务治理之Nacos_第5张图片

下面分别测试一下调用:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-INMiKpBn-1570897892036)(01-SpringCloud服务治理之Nacos.assets/nacos-producer.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-nwLsLHZf-1570897892036)(01-SpringCloud服务治理之Nacos.assets/nacos-consumer.png)]

至此,一个简单的SpringCloud使用Nacos来做服务注册与管理的示例已经完成。


四、项目测试源码

示例源码地址:https://github.com/laolunsi/spring-cloud-examples/tree/master/external-01-servicediscoverynacos

你可能感兴趣的:(SpringCloud)