【springCloud-2】Ribbon负载均衡

news2025/1/21 2:58:12

负载均衡,一般分为服务端负载均衡和客户端负载均衡。

服务端:如Nginx,F5等,请求到达服务器后进行负载均衡。

客户端:客户端获取到服务端的列表,自己经过一定的计算后选择某一台访问。

ribbon实现的就是客户端负载均衡,具体使用如下:

1、不需要引⼊额外的Jar坐标,因为在服务消费者中我们引⼊过eureka-client,它会引

Ribbon 相关 Jar。
2、 RestTemplate 上添加对应注解即可

 

Ribbon 内置了多种负载均衡策略,顶级接⼝为 com.netflflix.loadbalancer.IRule,常用如下:

如何选择使用哪种策略?很简单,配置文件配置即可:

 

为什么加了@LoadBalanced,负载均衡就会生效呢? 

其实,@LoadBalanced是Spring的注解,而不是Ribbon的。Spring在初始化容器的时候,如果检测到Bean被@LoadBalanced注解,就会为其设置LoadBalancerInterceptor拦截器。  RestTemplate在发送请求的时候会被拦截,先执行拦截器的核心方法:

再看看RibbonLoadBalancerClient.execute()

 其实说简单点,拦截器就是在RestTemplate请求时拦截住,根据请求信息找到所有的服务列表,然后读取配置获得负载均衡器,最终选择一个服务。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/625277.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Monica: 您的又一个免费ChatGPT 4.0

最近 ChatGPT 又开始封号了,主要原因如下: 违反使用条款:如果用户违反了平台或应用的使用条款,例如发布违法、恶意或滥用行为的内容,侵犯他人的权利,或者从事垃圾信息传播等,管理员可能会采取封…

多方合作时,系统间的交互是怎么做的?

大家好!我是sum墨,一个一线的底层码农,平时喜欢研究和思考一些技术相关的问题并整理成文,限于本人水平,如果文章和代码有表述不当之处,还请不吝赐教。 以下是正文! 文章背景 我们最近做了很多…

【资料分享】ESD基本概念及ESD产生来源详解

CMOS工艺集成电路制造技术已经进入纳米时代,随着特征尺寸的降低,ESD (Electro-Static Discharge,静电放电)问题越来越成为集成电路中最主要的可靠性问题。 ESD基本概念 ESD定义:ESD(Electro-Static disc…

垄断与市场力量

五力竞争分析模型 供应商的判断能力购买者的判断能力新进入者的威胁现有的竞争对手产品和服务的替代品的压力产品和服务的互补品 政府决策价值定位 服务哪些客户?满足这些客户的哪些需求?收取什么价格?垄断企业的经营 竞争企业是价格接受者,而垄断企业是价格制定者。 市场…

PURE:A Frustratingly Easy Approach for Entity and Relation Extraction

原文链接: https://aclanthology.org/2021.naacl-main.5.pdf ACL 2021 介绍 对于命名实体识别和关系提取,最近的研究要么在这两个任务上使用一个预训练结构,要么通过共享表征来进行多任务学习。作者认为实体模型和关系模型在上下文表征中学到…

kotlin的abstract抽象类与interface接口建模按钮android点击事件处理

kotlin的abstract抽象类与interface接口建模按钮android点击事件处理 例如: abstract class View {private var listener: OnClickListener? nullprivate var enabled: Boolean falseconstructor() {println("view constructor")}fun setClickListen…

用法详解!postman接口自动化如何进行环境变量

目录 前言: 1.设置环境变量 2.设置全局变量 3.检查response body中是否包含某个string 4.检测JSON中的某个值是否等于预期的值 5.转换XML body为JSON对象 6.检查response body是否与某个string相等 7.测试response Headers中的某个元素是否存在(如:Content-…

自然语言处理: N-Gram实战

自然语言处理: 第一章N-Gram 一. 理论 定义: 语言模型在wiki的定义是统计式的语言模型是一个几率分布,给定一个长度为 m 的字词所组成的字串 W1 , W2 , ,Wn ,派几率的字符串P(S) P(W1 , W2 , ,Wn , )而其…

web audio音效播放器/音乐播放器

这是一个基于Web Audio API、HTML和CSS构建的高级网页音频播放器。它允许用户播放音频文件、控制播放、可视化音频,并应用音频效果和过滤器。 Github仓库: https://github.com/sonichen/Web-Based-Audio-Player 希望大家多多star 环境 操作系统&#…

Android逆向解析加壳与脱壳技术

加壳 加壳是指在 APK 文件中插入额外的代码或数据,使得原始代码难以被分析和反编译。通常加壳是为了保护软件的知识产权或者防止逆向工程。下面是 Android 加壳的一般流程: 选择加壳工具:选择合适的加壳工具进行加壳,比如市面上…

【SpringCloud-1】注册中心-Eureka

springcloud微服务,相对于dubbo这种SOA架构,提供了一站式的全套解决方案,什么意思呢?就是说springcloud不需要依赖其他组件,自己提供了全套的 常规项目需要使用的技术和解决问题的方案。 比如dubbo需要依赖zk作为注册…

一文读懂二叉树

大家好,我是三叔,很高兴这期又和大家见面了,一个奋斗在互联网的打工人。 什么是二叉树 二叉树是一种由节点(Node)组成的数据结构,每个节点最多有两个子节点。它具有良好的层次结构,便于搜索和…

chatgpt赋能python:Python如何将IP地址转换为整数

Python如何将IP地址转换为整数 在计算机网络中,IP地址是一个包含32位的二进制数字,通常由四个8位二进制数字(即“点分十进制”)表示。但在某些情况下,需要将IP地址转换为整数,例如在网络编程中检查网络连接…

C语言:编写代码,演示多个字符从两端移动,向中间汇聚

题目: 给出第一个字符串,如:"welcome to school!!!!!", 设置第二个字符串:"######################", 两字符串字符数相等。 从第二个字符串两端开始移动,向中间汇聚&#…

Python 中判定整数

直接数值判定,表达式判定。 (本笔记适合学会 Python 基本数据类型,可以“融会贯通”的 coder 翻阅) 【学习的细节是欢悦的历程】 Python 官网:https://www.python.org/ Free:大咖免费“圣经”教程《 python 完全自学教程》&#…

IGP协议对SR-MPLS的扩展

目录 OSPF对于SR-MPLS的扩展 OSPF对邻接SID做了细分 10类LSA定义的TLV类型 10类LSA定义的TLV的报文格式 ISIS对SR-MPLS的扩展 ISIS对邻接SID做了细分 ISIS定义的Sub-TLV的类型 ISIS定义的Sub-TLV的报文格式 OSPF对于SR-MPLS的扩展 OSPF为了支持SR-MPLS通过新…

Vue.js 3.x Composition APIs 及简单使用

文章目录 Vue 3.0 和 2.x 的区别源码组织方式packages 目录结构 不同构建版本Composition API 设计动机设计动机Options API Demo:Composition API Demo:对比: 性能提升响应式系统升级编译优化优化打包体积 ViteESModuleVite as Vue-CLIVite 特点 Composition APICo…

NLP学习笔记三-数据处理基础

NLP学习笔记三-数据处理基础 NLP设计的处理处理技术也比较多,我们简单介绍一部分: 1.Tokenization NLP当中的Tokenization,博主以前无论是在文章中还是在代码中都能经常看到,这在自然语言处理中也是比较常用的技术。 Tokenizati…

ASEMI代理英飞凌TLD2314EL参数,LED驱动器TLD2314EL

编辑-Z TLD2314EL参数描述: 型号:TLD2314EL 电源电压VS:40V 输出电压VOUTx:40V 状态电压VST:6V 输出电流IOUTx:130 mA 结温Tj:-40~ 150℃ 储存温度Tstg:-55~ 150℃ 正常工作…

要不是和阿里P7聊过,我也不知道自己是个棒槌

前几天和一个朋友聊面试,他说上个月同时拿到了测试开发岗位腾讯和阿里的offer,最后选择了阿里。 阿里内部将员工一共分为了14个等级,P6是资深工程师,P7是技术专家。 其中P6和P7就是一个分水岭了,P6是最接近P7的不持股…