当前位置: 首页 > news >正文

Ribbon、Nacos

目录

Ribbon

常见负载算法

切换负载均衡算法

Nacos注册中心

下载和运行

微服务模块接入注册中心

consumer-80模块

配置类

Controller

Nacos配置中心

Nacos分类配置(实现配置隔离)

DataID方案

Group方案

Namespace方案

总结


Ribbon

Ribbon已经维护了,未来替换方案:SpringCloud LoadBalancer

常见负载算法

切换负载均衡算法

Nacos注册中心

使用RestTemplate,目前是硬编码

Nacos就是替代 注册中心【Eureka】 和  配置中心【Config】

支持AP和CP,可以切换

下载和运行

下载版本(找自己想要的版本):Tags · alibaba/nacos · GitHub

本地有良好的 Java8 + Maven环境

解压安装包,直接运行bin 目录下的startup.cmd

命令运行成功后直接访问:http://localhost:8848/nacos

默认用户名/密码为nacos

微服务模块接入注册中心

1、父工程引入依赖

2、子模块(provider-10000、consumer-80)引入依赖

3、yml

4、主启动类:加上@EnableDiscoveryClient注解

consumer-80模块

  nacos集成了ribbon,支持负载均衡

配置类

使用@LodadBalanced注解,从注册中心拉取服务名,通过负载算法完成调用

Controller

对于服务提供模块,本来有10000端口,现在复制一份,改为10001端口

统一命名对外暴露的名字,两个模块的名字都是member-service-provider

Nacos配置中心

每个微服务模块可以拉取配置中心的配置,统一使用、更改

新建配置客户端模块,端口5000

1、引入依赖

2、application.yml

3、bootstrap.yml(可以读取外部配置的内容)

        bootstrap加载优先级高于application,不能被覆盖

服务注册中心和配置中心可能不是同一个,目前是本机,所以是相同的地址

4、进入Nacos,加入配置(文件后缀必须是.yaml

        dataid必须和微服务的名称一致

5、使用@Vlaue("${ }")可以读取信息

6、主启动类

spring.application.name 对应: e-commerce-config 拼接

在application.yml: 配置 spring.profiles.active: dev拼接

spring.cloud.nacos.config.file-extension 配置文件的扩展名:yaml拼接

Data ID规则: ${spring.application.name}.${spring.profiles.active}.${spring.cloud.nacos.config.file-extension}

Nacos分类配置(实现配置隔离)

DataID方案

有多个同名Data ID的配置文件,只有后缀不同-dev,-test,

只需要把配置中心模块的application.yml的active修改成test就能读取数据

Group方案

Namespace方案

以开发dev环境为例

先找namespace,再找group,再根据DataID规则进行查找

总结

http://www.lryc.cn/news/510708.html

相关文章:

  • SpringCloudAlibaba实战入门之路由网关Gateway初体验(十一)
  • 【C语言练习(18)—指针传递参数练习】
  • 外网访问 Docker 容器的可视化管理工具 DockerUI
  • Edge SCDN酷盾安全重塑高效安全内容分发新生态
  • NodeRed使用心得,实现增删改查等
  • 【docker系列】打造个人私有网盘zfile
  • 协议幻变者:DeviceNet转ModbusTCP网关开启机器手臂智能新纪元
  • [计算机网络]OSPF协议
  • springcloud2023集成 knife4j 4.4.0 如何关闭
  • Springboot项目下面使用Vue3 + ElementPlus搭建侧边栏首页
  • 华为 IPD,究竟有什么特点?(二)
  • 【Laravel】接口的访问频率限制器
  • 【WRF模拟】如何得到更佳的WRF模拟效果?
  • 机械臂的各种标定
  • Android监听拨打电话
  • Framework开发入门(一)之源码下载
  • TCP off-path exploits(又一个弄巧成拙的例子)
  • Ajax总结
  • 修改网络ip地址方法有哪些?常用的有这四种
  • SpringBoot获取bean的几种方式
  • Debian12 安装配置 ODBC for GaussDB
  • 空中绘图板:用 Mediapipe 和 OpenCV 实现的创新手势识别应用
  • 讲一个自己写的 excel 转 html 的 java 工具
  • 前端往后端传递参数的方式有哪些?
  • Vue axios 异步请求,请求响应拦截器
  • yarn install 安装报错:Workspaces can only be enabled in private projects.
  • http 请求总结get
  • TCP 和 UDP 的区别:解析网络传输协议
  • 【已解决】pyinstaller打包ico图片报错:OSError: [WinError 225] 无法成功完成操作,因为文件包含病毒或潜在的垃圾软件。
  • SpringBoot项目配置文件的优先级