美文网首页
Nacos注册中心

Nacos注册中心

作者: kjy_112233 | 来源:发表于2022-05-04 15:15 被阅读0次

一、安装Nacos

(1)下载地址:https://github.com/alibaba/nacos/releases
(2)配置端口、启动
在解压文件中conf/application.properties设置端口默认是8848
双击bin/startup.cmd启动服务
命令行启动:在bin文件下开启黑窗口startup.cmd -m standalone

二、注册服务到Nacos

1、在cloud-demo父工程添加依赖
<!--nacos的管理依赖-->
<dependency>
  <groupId>com.alibaba.cloud</groupId>
  <artifactId>spring-cloud-alibaba-dependencies</artifactId>
  <version>2.2.5.RELEASE</version>
  <type>pom</type>
  <scope>import</scope>
</dependency>
2、添加Nacos客户端依赖
<!-- nacos客户端依赖包 -->
<dependency>
  <groupId>com.alibaba.cloud</groupId>
  <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
</dependency>
3、在application.yml中添加Nacos地址
server:
  port: 8088
spring:
  application:
    name: orderservice
  cloud:
    nacos:
      server-addr: localhost:8848 # nacos服务地址
4、服务拉取

(1)url访问路径,用服务名称代替ip、端口

String url = "http://orderservice/user/" + user.getOrderId();

(2)在启动类中的RestTemplate添加负载均衡注解

    @Bean
    @LoadBalanced
    public RestTemplate restTemplate() {
        return new RestTemplate();
    }

三、Ribbon负载均衡

(1)Ribbon负载均衡规则

规则接口是IRule。默认实现是ZoneAvoidanceRule,根据zone选择服务列表,然后轮询

(2)负载均衡自定义两种方式

配置灵活,但修改时需要重新打包发布

@Bean
public IRule randomRule() {
  return new RandomRule();
}

直观、方便无需重新打包发布,但是无法做全局配置

userservice:
  ribbon:
    NFLoadBalancerRuleClassName: com.alibaba.cloud.nacos.ribbon.NacosRule  # 负载均衡规则
(3)Ribbon默认加载方式是懒加载。更改加载方式
ribbon:
  eager-load:
    enabled: true # 开启饥饿加载
    clients: # 指定饥饿加载的服务名称
      - userservice

四、Nacos分级存储模型

1、在application.yml中设置集群属性
  cloud:
    nacos:  # nacos的地址信息
      server-addr: localhost:8848
      discovery:
        cluster-name: HZ #设置集群
2、修改负载均衡规则,本地集群优先选择相互访问
userservice:
  ribbon:
    NFLoadBalancerRuleClassName: com.alibaba.cloud.nacos.ribbon.NacosRule  # 负载均衡规则
3、根据权重负载均衡

编辑修改权重设置,设置为0不会被访问

4、环境隔离

(1)在命名空间设置新建命名空间,在application.yml中设置命名空间填写ID(不同环境不能相互访问)

  cloud:
    nacos:  # nacos的地址信息
      server-addr: localhost:8848
      discovery:
        cluster-name: HZ #设置集群
        namespace: 4d22cecf-3eba-400d-a2d1-f5a359f3f0eb #dev环境

五、Nacos配置管理

1、统一配置管理(配置热更新)

配置管理——配置列表——点击加号——新建配置信息

2、获取配置信息

引入nacos配置管理依赖

<!--nacos的配置管理依赖-->
<dependency>
  <groupId>com.alibaba.cloud</groupId>
  <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
</dependency>

新建bootstrap.yml文件

spring:
  application:
    name: orderservice #服务名称
  profiles:
    active: dev # 环境
  cloud:
    nacos:
      server-addr: localhost:8848 # nacos地址
      config:
        file-extension: yaml # 文件后缀名

服务的读取

@Component
@ConfigurationProperties(prefix = "pattern")
public class PatternProperties {
    private String dateformat;

    public void setDateformat(String dateformat) {
        this.dateformat = dateformat;
    }

    public String getDateformat() {
        return dateformat;
    }
}
3、多环境配置共享

创建配置信息不添加环境名称

相关文章

  • 微服务技术栈

    1,注册中心:Eureka: 2,注册中心:Nacos: 3,统一配置:Nacos

  • 【Spring Cloud Alibaba】Nacos

    《Nacos》 启动注册中心 您需要先下载 Nacos 并启动 Nacos server。操作步骤参见 Nacos...

  • nacos学习一服务注册

    1、启动nacos注册中心 nacos可视化页面地址 http://localhost:8848/nacos/in...

  • Nacos使用备忘

    写在前面 Nacos就是注册中心+配置中心,基本等价于:Nacos = Eureka + Config + Bus...

  • 简单微服务项目搭建

    本示例服务注册中心使用nacos-discovery,配置中心使用nacos-config,网关使用Spring ...

  • nacos注册中心

    一、作用 微服务架构中最核心的部分是服务治理,服务治理最基础的组件是注册中心 二、注册中心 1、常见的注册中心 S...

  • nacos注册中心

    1. 使用 1.1 父工程引入对应版本的依赖,注意springboot , cloud, cloud-alibab...

  • Nacos注册中心

    一.作用 一个更易于构建云原生应用的动态服务发现、配置管理和服务管理平台。 二.使用流程 1.下载Nacos服务器...

  • Nacos注册中心

    一、安装Nacos (1)下载地址:https://github.com/alibaba/nacos/releas...

  • Nacos注册中心

    SpringCloudAlibaba 推出了一个名为 Nacos 的注册中心,在国外也有大量的使用。 解压启动 N...

网友评论

      本文标题:Nacos注册中心

      本文链接:https://www.haomeiwen.com/subject/bhmbyrtx.html