负载均衡的实例时是在eureka实例的基础上搭建的。

eureka的实例

https://blog.csdn.net/wangyunzhao007/article/details/105776190

除此之外,我们还需要一个注册中心的同名服务端,然后在客户端使用测试类进行调用测试即可。

同名客户端

和eureka博客中的服务端配置基本相同,只需修改一下端口号即可。然后启动,然后查看在localhost:10086的页面,如图:

然后改造客户端,我们需要建立一个测试类。

1.首先增加依赖

        <dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-netflix-ribbon</artifactId><version>2.2.2.RELEASE</version></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope><exclusions><exclusion><groupId>org.junit.vintage</groupId><artifactId>junit-vintage-engine</artifactId></exclusion></exclusions></dependency>

然后增加测试类:

@SpringBootTest(classes= ServiceConsumerApplication.class)
//@RunWith(SpringRunner.class)
public class RibbonLoadBalanceTest {@Autowiredprivate RibbonLoadBalancerClient client;@Testpublic void test(){for (int i = 0; i <50 ; i++) {ServiceInstance instance = this.client.choose("service-provider");System.out.println(instance.getHost()+":"+instance.getPort());}}
}

然后启动测试类,因为并没有配置yml中的属性,ribbon默认是轮询访问两个客户端:

当我们添加了yml中的配置后

整个服务端的yml配置如下:

server:port: 80
spring:application:name: service-consumer
eureka:client:service-url:defaultZone: http://localhost:10086/eureka/registry-fetch-interval-seconds: 5fetch-registry: true  #开启拉取服务
service-provider: #服务提供方的idribbon:NFLoadBalancerRuleClassName: com.netflix.loadbalancer.RandomRule #策略为随机

yml文件配置了负载均衡策略是随机,执行结果如下:

【SpringCloud】Ribbon-实例相关推荐

  1. SpringCloud Ribbon(六)之服务实例过滤器ServerListFilter

    一.服务实例过滤器ServerListFilter 服务实例过滤器(ServerListFilter)为负载均衡器(Loadbalancer)提供从服务实例列表(ServerList)获取的服务实例过 ...

  2. SpringCloud Ribbon(五)之服务实例列表ServerList

    一.服务实例列表ServerList 服务实例列表(ServerList)为负载均衡器(Loadbalancer)提供服务的可用实例列表. 负载均衡器(Loadbalancer)通过服务实例列表(Se ...

  3. springcloud ribbon @LoadBalance负载均衡源码流程分析

    一.编写示例 1.服务端 pom.xml <properties><java.version>1.8</java.version><spring-cloud. ...

  4. SpringCloud Ribbon(二)之自定义负载均衡策略IRule

    一.Ribbon负载均衡策略 一个服务对应一个LoadBalancer,一个LoadBalancer只有一个Rule,LoadBalancer记录服务的注册地址,Rule提供从服务的注册地址中找出一个 ...

  5. SpringCloud Ribbon中的7种负载均衡策略!

    作者 | 磊哥 来源 | Java中文社群(ID:javacn666) 转载请联系授权(微信ID:GG_Stone) 负载均衡通器常有两种实现手段,一种是服务端负载均衡器,另一种是客户端负载均衡器,而 ...

  6. SpringCloud Ribbon实战(三)

    接着上一篇关于ribbon介绍(服务提供者只有一个我们似乎没有感觉到负载均衡)我们接着讲ribbon真正的负载均衡 我们就多创建两个微服务提供者,怎么创建微服务工程之前我们就讲过了这里不在多说,如果不 ...

  7. SpringCloud Ribbon负载均衡介绍及使用

    一.什么是Ribbon Ribbon为Netflix发布的一款客户端负载均衡器.在SpringCloud中Eureka一般配合Ribbon使用,Ribbon利用从Rureka中获取到服务提供者列表信息 ...

  8. SpringCloud入门实例

    SpringCloud微服务 概述 ​ Spring Cloud是一系列框架的有序集合.它利用Spring Boot的开发便利性巧妙地简化了分布式系统基础设施的开发,如服务发现注册.配置中心.消息总线 ...

  9. 四、SpringCloud——Ribbon负载均衡Ribbon自定义

    1 Ribbon简介 1)是什么 Spring Cloud Ribbon是基于Netflix Ribbon实现的一套客户端负载均衡的工具. 简单的说,Ribbon是Netflix发布的开源项目,主要功 ...

  10. SpringCloud Ribbon源码探索学习

    Ribbon使用 在平时使用Ribbon时,更多的是将Ribbon与RestTemplate相结合: @Bean@LoadBalancedRestTemplate restTemplate(){ret ...

最新文章

  1. Python3.6全栈开发实例[006]
  2. 文件包含和文件上传结合
  3. JavaScript中的地图与对象
  4. STM32F105 PA9/OTG_FS_VBUS Issues
  5. 云栖专辑 | 阿里开发者们的第19个感悟:Simple is better.
  6. Oracle - crfclust.bdb文件太大
  7. access怎么做批注_添加、编辑和删除记录的方法
  8. Robocode 超级机器人 “波”统计瞄准算法
  9. 【JavaScript】为什么是script error.
  10. 为什么我的燃尽图没更新?
  11. java 抓取搜狗微信_搜狗微信公众号文章抓取
  12. WebDriver - 伪浏览器PhantomJs(ghost driver) HtmlUnit
  13. HNOI2017滚粗记
  14. 小猫爪:i.MX RT1050学习笔记7-Power Supply
  15. LeetCode买卖股票之一:基本套路(122)
  16. 【愚公系列】2023年01月 Java教学课程 003-Hello World的运行
  17. 阿尔法大蛋智能机器人功能_科大讯飞机器阿尔法蛋大蛋2.0怎么样?儿童智能机器人阿尔法蛋大蛋2.0和1.0区别对比!...
  18. CSS3-web字体
  19. 疯狂坦克高抛,半抛,小抛算法
  20. 态路小课堂丨100G解决方案 - 4×25G NRZ光模块

热门文章

  1. VS中解决LIBCMTD.lib和uafxcwd.lib冲突(uafxcw.lib LIBCMT.lib冲突)
  2. 利用tab_control控件在对话框中加入属性页的方法详细介绍
  3. Android--实现自制录音/播放录音程序
  4. Linux C编程中的段错误
  5. php+实现群发微信模板消息_php实现发送微信模板消息的方法,php信模板消息_PHP教程...
  6. linux创建mysql视图_MySQL视图基本操作
  7. 算法 求一个数组的最长递减子序列 C
  8. android按钮随机数,Android随机数
  9. 传感器实训心得体会_传感器实训心得
  10. mockito_Mockito:无法实例化@InjectMocks字段:类型是接口