zoukankan      html  css  js  c++  java
  • SpringCloud番外篇-服务治理之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上下载压缩包,解压,可以看到如下:
    file

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

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

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

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


    三、服务注册

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

    也可以参考我的配置:

    3.1 引入nacos依赖

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

    	<properties>
            <java.version>1.8</java.version>
            <nacos.version>0.9.0.RELEASE</nacos.version>
        </properties>
    
        <dependencies>
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-web</artifactId>
            </dependency>
    
            <!-- 引入nacos-discovery -->
            <dependency>
                <groupId>org.springframework.cloud</groupId>
                <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
                <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两个项目,分别启动后:

    file

    下面分别测试一下调用:

    file

    file

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


    四、项目测试源码

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

  • 相关阅读:
    学习练习 java输入输出流 练习题1
    学习总结 java Iterator迭代器练习
    学习总结 java 输入输出流
    学习记录 java 哈希
    学习记录 java 链表知识
    学习总结 java 异常
    学习练习 java 集合
    web压缩gzip响应
    web乱码问题
    web附件中文名
  • 原文地址:https://www.cnblogs.com/eknown/p/11809887.html
Copyright © 2011-2022 走看看