Spring-Cloud之Ribbon

原文:https://blog.vchar.top/java/1620820800.html

Ribbon的引入将为我们解决服务集群部署时需要实现相关的负载均衡的算法,简化服务调用的过程;引入Ribbon后在进行服务调用时只需要指定服务名称即可,无需去关心服务的部署地址以及负载均衡实现。下面我们通过一些Ribbon的示例带你快速了解如何使用它。下面示例使用的Spring-Cloud的版本是Hoxton.SR8,Spring-Boot的版本是2.3.4.RELEASE。示例项目的源代码

添加相关的依赖

由于引入的spring-cloud-starter-netflix-eureka-client中就包含了ribbon的东西,因此我们无需再额外的引入东西。

<!--eureka注册中心客户端-->
<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
</dependency>

未引入ribbon组件时调用服务的示例

传统的方案就通过httpclient来请求,为了简便我们这里直接使用RestTemplate来操作。

@Autowired
private RestTemplateBuilder restTemplateBuilder;

@Autowired
private EurekaClient eurekaClient;

@Override
public void findGoods(Long id){
   
    // 从eureka注册表中获取到要调用服务的地址和端口号
    String domain = getServerAddress("ribbon-b");
    // 拼接调用地址
    String url = String.format(domain+"/goods?id=%d", id);
    // 发送请求
    String res = restTemplateBuilder.build().getForObject(url, String.class)<
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值