SpringCloud学习笔记(2)——Ribbon

关于并网继电器的继电器自检逻辑及实现方式 对于常规的光伏并网逆变器来说,继电器控制至关重要。继电器一般位于逆变电感后,共模电感前,用于将逆变电压与电网电压脱开,一般国外有双继电器的安规强制认证要求,国内目前只需要单继电器要求(后续应该会有双继电器要求,个人感觉) 阅读详情

参考SpringCloud官网第16、17章

16. Client Side Load Balancer: Ribbon

Ribbon是一个客户端的负载均衡器,它提供对大量的HTTP和TCP客户端的访问控制。Feign也是用的Ribbon,所以在这一章你也可以用@FeignClient

Ribbon的一个核心概念是命名的客户端。每个负载均衡器都是这个组件的全体的一部分,它们一起工作来连接到服务器,并且它们全体都有一个给定的名字。

Spring Cloud用RibbonClientConfiguration在ApplicationContext中创建一个新的全体,它包含一个ILoadBalancer、一个RestClient和一个ServerListFilter

16.1 How to Include Ribbon

SpringCloud学习笔记(2)——Ribbon

 

如果想学习Java工程化、高性能及分布式、深入浅出。微服务、Spring,MyBatis,Netty源码分析的朋友可以加我的Java高级交流:854630135,群里有阿里大牛直播讲解技术,以及Java大型互联网技术的视频免费分享给大家。

16.2 Customizing the Ribbon Client

Spring Cloud可以让你自己完全控制Ribbon客户端,通过用@RibbonClient来声明额外的配置。例如

SpringCloud学习笔记(2)——Ribbon

 

在这个例子中,这个客户端由RibbonClientConfiguration和FooConfiguration一起组成。

注意:本例中,FooConfiguration必须用@Configuration注解标注,但是它不应该在主Application Context的组件扫描之中,否则它将被所有的Ribbon客户端共享。如果你用@ComponentScan(或者@SpringBootApplication),那么你应该采取措施来避免它被包含到扫描的范围中。

SpringCloud学习笔记(2)——Ribbon

 

SpringCloud学习笔记(2)——Ribbon

 

16.3 Customizing default for all Ribbon Clients

通过@RibbonClients注解可以为所有的Ribbon客户端提供一个默认的配置。例如

SpringCloud学习笔记(2)——Ribbon

 

16.6 Example: How to Use Ribbon Without Eureka

Eureka提供了一种抽象的发现远程服务的便捷的方式,这样你就不必在客户端代码中硬编码服务端的URL,但是如果你不用它,那么Ribbon和Feign也是经得起考验的。假设,你没有使用Eureka,并且你用@FeignClient声明了一个"stores"服务,这个时候Ribbon Client默认生成一个配置的服务列表,当然你也可以提供下面这样的配置:

SpringCloud学习笔记(2)——Ribbon

 

16.7 Example: Disable Eureka use in Ribbon

SpringCloud学习笔记(2)——Ribbon

 

说了这么多,那究竟怎么用呢?下面看示例演示

在这个示例中有三个角色:注册中心、服务提供方、服务消费方

SpringCloud学习笔记(2)——Ribbon

 

服务提供方是eureka-demo-client,消费方是ribbon-demo,下面看下消费方是如何配置的

首先是pom.xml,这个没啥说的

SpringCloud学习笔记(2)——Ribbon

 

其次是application.yml,也没什么特别的

SpringCloud学习笔记(2)——Ribbon

 

最后是启动类

SpringCloud学习笔记(2)——Ribbon

 

还有调用的类

SpringCloud学习笔记(2)——Ribbon

 

先启动eureka-demo-server,然后再启动另外两个工程

SpringCloud学习笔记(2)——Ribbon

 

浏览器访问消费方地址

SpringCloud学习笔记(2)——Ribbon

 

SpringCloud学习笔记(2)——Ribbon

 

哈哈哈,访问成功!!!

SpringCloud学习笔记(2)——Ribbon

 

17. Declarative REST Client: Feign

Feign是一个声明式的Web服务客户端,它使得访问Web服务变得更容易。为了使用Feign,需要创建接口并且使用注解标注它。使用Feign的时候,Spring Cloud集成Ribbon和Eureka来提供一个具有负载均衡能力的HTTP客户端。

17.1 How to Include Feign

SpringCloud学习笔记(2)——Ribbon

 

SpringCloud学习笔记(2)——Ribbon

 

@FeignClient注解的value值是一个任意客户端的名字,这个名字被用于创建Ribbon负载均衡器。你还可以使用url属性来指定一个url。

Ribbon客户端想要发现"stores"这个服务的真实的物理地址。如果你的应用中使用的是Eureka,那么它将通过Eureka服务注册类解析。

17.2 Overriding Feign Defaults

SpringCloud学习笔记(2)——Ribbon

 

SpringCloud学习笔记(2)——Ribbon

 

如果想学习Java工程化、高性能及分布式、深入浅出。微服务、Spring,MyBatis,Netty源码分析的朋友可以加我的Java高级交流:854630135,群里有阿里大牛直播讲解技术,以及Java大型互联网技术的视频免费分享给大家。

接下来,用Feign演示如何调用

再新建一个工程feign-demo

SpringCloud学习笔记(2)——Ribbon

 

SpringCloud学习笔记(2)——Ribbon

 

SpringCloud学习笔记(2)——Ribbon

 

SpringCloud学习笔记(2)——Ribbon

 

SpringCloud学习笔记(2)——Ribbon

 

SpringCloud学习笔记(2)——Ribbon

 

SpringCloud学习笔记(2)——Ribbon

 

欢迎工作一到八年的Java工程师朋友们加入Java高级交流:854630135

本群提供免费的学习指导 架构资料 以及免费的解答

不懂得问题都可以在本群提出来 之后还会有直播平台和讲师直接交流噢

C#程序突然崩溃怎么办?5分钟学会分析Dump文件(Visual Studio 2022实战) 本文详细介绍了在C#程序崩溃或无响应时,如何捕获并分析Dump文件以快速定位问题。通过Visual Studio 2022实战演示,重点讲解了配置符号服务器、解读调用堆栈与内存状态,以及针对CPU飙高、内存泄漏等典型场景的分析方法,帮助开发者高效进行故障诊断。 阅读详情

相关推荐

VSCode里玩转AvaloniaUI:手把手教你搭建跨平台桌面应用开发环境(附.NET 7配置避坑)

本文详细介绍了如何在VSCode中搭建AvaloniaUI跨平台桌面应用开发环境,包括.NET 7配置避坑指南。从环境准备、项目创建到调试优化,手把手教你利用VSCode和Avalonia实现高效开发,特别解决了.NET 7依赖等常见问题,助力开发者快速上手跨平台应用开发。

weixin_28826545的博客 578

Spring Cloud入门教程-Ribbon实现客户端负载均衡

上述知识点,囊括了目前互联网企业的主流应用技术以及能让你成为“香饽饽”的高级架构知识,每个笔记里面几乎都带有实战内容。很多人担心学了容易忘,这里教你一个方法,那就是重复学习。打个比方,假如你正在学习 spring 注解,突然发现了一个注解@Aspect,不知道干什么用的,你可能会去查看源码或者通过博客学习,花了半小时终于弄懂了,下次又看到@Aspect 了,你有点郁闷了,上次好像在哪哪哪学习,你快速打开网页花了五分钟又学会了。从半小时和五分钟的对比中可以发现多学一次就离真正掌握知识又近了一步。

2401_83916283的博客 948

STM32H7 Flash擦除后数据读取异常的缓存问题解析

本文深入分析了STM32H7系列芯片在Flash擦除后数据读取异常的缓存问题,揭示了由于数据缓存(D-Cache)和指令缓存(I-Cache)导致的数据一致性问题。通过详细的解决方案,包括手动维护缓存一致性和操作期间禁用缓存,帮助开发者有效解决这一常见但棘手的嵌入式开发难题。

weixin_29158413的博客 393

Spring Cloud系列之Ribbon

概述负载均衡负载均衡,即Load Balance,LB,通器常有两种实现手段,服务端和客户端。负载均衡器,是带有负载均衡功能的实体(或载体),本文不做严格区分;即缩写LB,可表示负载均衡策略,也可以表示负载均衡器。服务端LB的缺点,提供更强的流量控制权,但无法满足不同的消费者希望使用不同负载均衡策略的需求,而使用不同负载均...

cnzzs的博客 1045

BDD测试之Behave使用入门

BDD测试(Behavior-Driven Development Testing)是一种基于“行为驱动开发”(BDD)理念。

想要成为酷盖但是失败的小明 582

支付宝支付(三):周期扣款实现注意细节

一、周期扣款实现说明 1、官方文档入口:https://opendocs.alipay.com/open/20190319114403226822/intro 2、根据官方文档说明,周期扣款有两种方式:先签约后代扣场景和支付后签约场景 3、周期扣款接入问题文档: a>https://opendocs.alipay.com/support/01rg24 b>https://opensupport.alipay.com/support/knowledge/50249/20160248753

新鲜雾霾的博客 5707

精通springcloud:微服务之间的通信,使用Ribbon执行负载均衡

使用Ribbon执行负载均衡 与Ribbon 有关的主要概念是命名客户端(Client) 。这就是为什么开发人员可以使用客户端的名称而不是带有主机名和端口的完整地址来调用其他服务,并且无须连接到服务发现。在这种情况下,应该在application.yml文件内的Ribbon配置设置中提供地址的列表。 使用Ribbon客户端启用微服务之间的通信 现在来继续这个示例。它由4个独立的微服务组成,其中一些可能会调用其他微服务公开的端点。应用程序源代码可在以下地址处获得。 https://gith.

jinggege795的博客 426

百度飞桨+文心大模型实战:生成式AI工程师认证备考全攻略(含真题解析)

本文详细解析百度飞桨与文心大模型结合的生成式AI工程师认证备考策略,涵盖认证体系、学习路径、核心技能突破及真题分析。帮助开发者掌握大模型原理、飞桨平台操作和文心大模型应用,高效通过工信部与百度联合认证考试。

loss4bartender的博客 689

springcloud切换负载均衡算法不生效,@RibbonClient与@LoadBalancerClient使用方法

在看尚硅谷的springloud视频时候,跟着视频和下载的脑图资料做的时候,发现由轮询切换随机的负载均衡算法没有生效,看弹幕说什么切换服务名大小写什么的,都没生效,折腾一上午,发现是脑图资料有错误。 RoundRobinRule()根本就是tmd轮询,而不是随机,不管怎么折腾,都是轮询效果,这里应该是RandomRule() @Bean public IRule myRule() { // 定义为随机 return new RandomR

weixin_42260782的博客 3306

风力发电机缺陷检测平台

风力发电机缺陷检测平台相关内容展示

weixin_39779415的博客 1111

stata 工具变量法【计量经济系列(七)】

stata 工具变量法【计量经济系列(七)】 1. 内生性 2. 工具变量3. 2SLS (二阶段最小二乘法) 4. 弱工具变量5. 工具变量外生性的过度识别检验 6. 豪斯曼检验6.1 传统豪斯曼 6.2 杜宾-吴-豪斯曼检验(DWH)

侯小啾技术博客 2万+

springcloud feign负载均衡_SpringCloud学习笔记(2)——Ribbon

参考SpringCloud官网第16、17章16. Client Side Load Balancer: RibbonRibbon是一个客户端的负载均衡器,它提供对大量的HTTP和TCP客户端的访问控制。Feign也是用的Ribbon,所以在这一章你也可以用@FeignClientRibbon的一个核心概念是命名的客户端。每个负载均衡器都是这个组件的全体的一部分,它们一起工作来连接到服务器,并且它...

weixin_39990029的博客 82

YOLO11多类别数据集的类别平衡方法:讲解类别不平衡问题的识别方法,以及过采样、欠采样、类别权重调整等解决方案(一)

类别不平衡问题是机器学习和计算机视觉领域中一个常见但棘手的挑战。简单来说,当数据集中不同类别的样本数量存在显著差异时,我们就称这个数据集存在类别不平衡问题。在YOLO目标检测任务中,这意味着某些类别的目标对象在训练数据中出现得非常频繁,而其他类别的目标对象则很少出现。 想象一下,你正在训练一个交通监控系统,需要检测不同类型的车辆。在这个场景中,"汽车"这个类别可能有成千上万个实例,而"自行车"或"摩托车"可能只有几百个实例。这种数量上的巨大差异就是典型的类别不平衡问题。 从数学角度来看,假设我们有一个包

本博客聚焦 YOLOv11 全流程落地,涵盖架构优化、数据集处理、训练技巧与多场景部署,兼及国产数据库、Java 开发与 AI 模型应用,内容兼顾理论与工程实践,为开发者提供系统干货,助力高效提升技术能力。 941

SpringCloud学习笔记(2):使用Ribbon负载均衡

SpringCloud学习笔记(2):使用Ribbon负载均衡 简介 Spring Cloud Ribbon是基于Netflix Ribbon实现的一套客户端负载均衡工具,在注册中心对Ribbon客户端进行注册后,Ribbon可以基于某种负载均衡算法,如轮询(默认)、随机、加权轮询、加权随机等自动帮助服务消费者调用接口。 项目介绍 sc-parent,父模块(请参照SpringCloud学...

zdy0_2004的专栏 230

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

springCloud 学习笔记2 ribbon 实现客户端负载均衡

maven基础ribbon基本介绍项目案例 客户端实现负载均衡结构图准备工作搭建eureak 服务端搭建eureak客户端,服务提供者搭建eureak客户端,服务消费者,集成ribbon模块测试自定义负载均衡器,注解实现测试自定义负载均衡器,配置实现实现 ribbon基本介绍 Ribbon是Netflix发布的负载均衡器,一个基于HTTP和TCP的客户端负载均衡工具,Spring Cloud集成了...

IT 工农兵 206

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

SpringCloud-2.X 学习笔记03.1 Eureka Consumer (Ribbon) 搭建

SpringCloud-2.X 学习笔记03 Eureka Consumer 搭建1 搭建服务2 添加注解3 修改配置4 查看结果 1 搭建服务 2 添加注解 package com.xu.eureka.consumer; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springfram

风信子 380

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

Spring Cloud学习笔记2-服务消费者(rest+ribbon)

title: “Spring Cloud学习笔记2-服务消费者(rest+ribbon)” url: “https://wsk1103.github.io/” tags: Spring Cloud 学习笔记 备注: 官网:http://spring.io/projects/spring-cloud JAVA: 1.8 + MAVEN: 3.5.0 + Spring Boot:2.0.7.R...

wsk1103 4613

SpringCloud-2.0-周阳(8. 负载均衡 - Ribbon)学习笔记

上一篇 :7. 服务注册发现 - Consul 文章目录1. 1.

圆的博客 711

SpringCloud 学习笔记2--服务注册与发现、@LoadBalanced实现负载均衡、纯手写Ribbon实现本地负载均衡

一、SpringCloud简介 是基于SpringBoot基础之上开发的微服务框架,SpringCloud是一套目前非常完整的微服务解决方案框架,其内容包含服务治理、注册中心、配置管理、断路器、智能路由、微代理、控制总线、全局锁、分布式会话等。 SpringCloud包含众多的子项目: 1)SpringCloud config 分布式配置中心。 ...

gonghua0502的专栏 848

基于SpringCloud的微服务架构学习笔记(2)注册中心Eureka和负载均衡Ribbon

注册中心Eureka和负载均衡Ribbon

须臾徐的博客 604

SpringCloud(第三章 关于Cloud各种组件的停更/升级/替换)

1.Cloud各种组件的停更与升级图 SpringCloud - Hoxton.SR1版本官网文档 SpringCloud - Hoxton.SR1版本中文文档 SpringBoot - 2.2.2 版本官方文档

qq_45087487的博客 474

【SpringCloud】Ribbon负载均衡

在Eureka注册中心中我们在添加完@LoadBalanced注解,即可实现负载均衡功能,现在一起探索一下负载均衡的原理(Ribbon)。通过定义IRule实现可以修改负载均衡规则,有两种方式:@Beanuserservice: # 给某个微服务配置负载均衡规则,这里是userservice服务ribbon:NFLoadBalancerRuleClassName: com.netflix.loadbalancer.RandomRule # 负载均衡规则以上就是关于Ribbon负载均衡的讲解。

浩泽学编程的博客 5999
上一篇: SpringCloud学习笔记(1)——Eureka
下一篇: 浅谈SpringMVC执行过程
javaQQ群 866865133
博客等级 码龄8年 59粉丝 309原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值