zoukankan      html  css  js  c++  java
  • 服务注册中心 ------ Nacos

    一、服务的注册中心

    自己设计一个服务的注册中心

     

     (1)注册:服务启动的时候将服务信息注册到注册中心;(insert)

    (2)心跳:服务内部的定时任务 Timer1 定时发送心跳给注册中心,更新 last_heatTime 字段;(update)

    (3)服务间调用:因为 Timer2 定时从注册中心获取其他服务的信息并缓存到服务内部,所以服务1调用服务2的时候直接从服务1内存缓存中得到服务2的ip及端口号。(select)

    (4)清理无心跳的服务:Timer3 定时任务将长时间没有收到心跳的实例状态修改为 down。(update)

    (5)服务注销:服务在停止的时候注销实例信息。(delete)

    二、nacos的安装

    1、nacos的下载

    wget https://github.com/alibaba/nacos/releases/download/1.1.4/nacos-server-1.1.4.tar.gz

    2、解压nacos的包: tar -zxvf nacos-server-1.1.4.tar.gz 

     3、启动nacos

    cd nacos/bin
    sh startup.sh -m standalone

    4、检查nacos是否启动起来: lsof -i:8848 

     5、在浏览器访问 nacos 的地址:http://192.168.1.1:8848/nacos

    用户名和密码: nacos/nacos

    注意: 

    (1)虚拟机要把防火墙关闭或者将对应的端口打开;

    (2)浏览器使用 360的极速模式,兼容模式会有问题(登录页面不显示)。(坑~~~)

    三、服务注册到nacos

    nacos的官方文档:https://nacos.io/zh-cn/docs/quick-start.html

    1、父工程的maven坐标

        <parent>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-parent</artifactId>
            <version>2.1.3.RELEASE</version>
            <relativePath/>
        </parent>
    
        <dependencyManagement>
            <dependencies>
                <!--引入springcloud的版本-->
                <dependency>
                    <groupId>org.springframework.cloud</groupId>
                    <artifactId>spring-cloud-dependencies</artifactId>
                    <version>Greenwich.SR3</version>
                    <type>pom</type>
                    <scope>import</scope>
                </dependency>
    
                <!-- 引入spring cloud alibaba -->
                <dependency>
                    <groupId>com.alibaba.cloud</groupId>
                    <artifactId>spring-cloud-alibaba-dependencies</artifactId>
                    <version>2.1.1.RELEASE</version>
                    <type>pom</type>
                    <scope>import</scope>
                </dependency>
            </dependencies>
        </dependencyManagement>

    2、服务的maven坐标引入

        <dependencies>
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter</artifactId>
            </dependency>
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-web</artifactId>
            </dependency>
    
            <!-- nacos client  -->
            <dependency>
                <groupId>com.alibaba.cloud</groupId>
                <artifactId>spring-cloud-alibaba-nacos-discovery</artifactId>
            </dependency>
    
        </dependencies>

    3、启动类增加  @EnableDiscoveryClient 注解

    @SpringBootApplication
    @EnableDiscoveryClient
    public class OrderApplication {
        public static void main(String[] args) {
            SpringApplication.run(OrderApplication.class, args);
        }
    }

    4、配置文件

    spring:
      cloud:
        nacos:
          discovery:
            server-addr: 192.168.172.20:8848
      application:
        name: order-center
    
    server:
      port:8001

    5、启动服务

  • 相关阅读:
    精益敏捷企业的七大核心能力和实施路线图-Scrum中文网
    leangoo思维导图实用过程
    Scrum看板+思维导图联动,高效创新
    Leangoo敏捷开发工具- 6.0.2 版发布
    多项目协同管理软件
    项目管理软件~leangoo
    用Leangoo看板工具做采购流程管理
    Android的简单应用(四)——字符串处理
    Android的简单应用(三)——为你的程序添加监听器
    使用WindowManager添加View——悬浮窗口的基本原理
  • 原文地址:https://www.cnblogs.com/yufeng218/p/13961766.html
Copyright © 2011-2022 走看看