为了账号安全,请及时绑定邮箱和手机立即绑定

spring cloud 服务消费者+ribbon 均衡策略配置

标签:
Java

基于上篇文章 重新创建一份 eureka client 设置端口为 8573 其余不变。启动控制台显示 有两个同名服务已经注册到服务中心.
图片描述

开始创建服务消费中心.
新建springboot工程 添加 eureka,ribbon,web
修改配置文件

eureka:
  client:
    serviceUrl:
      defaultZone: http://localhost:8761/eureka/
server:
  port: 8764
spring:
  application:
    name: service-ribbon

将该服务器同样注册到服务中心.

在工程的启动类中,通过@EnableDiscoveryClient向服务中心注册;并且向程序的ioc注入一个bean: restTemplate;并通过@LoadBalanced注解表明这个restRemplate开启负载均衡的功能。

@SpringBootApplication
@EnableDiscoveryClient
public class RibbonApplication {

    public static void main(String[] args) {
        SpringApplication.run(RibbonApplication.class, args);
    }

    @Bean
    @LoadBalanced
    public RestTemplate initBean() {
        return new RestTemplate();
    }
}

新建controller 和service

@RestController
public class RibbonController {

    private Logger logger= LoggerFactory.getLogger(RibbonController.class);

    @Autowired
    private HelloService helloService;

    @RequestMapping(value = "/ribbon")
    public Object ribbonTestRequest(){
        return helloService.ribbonTest();
    }

}
@Service
public class HelloService {

    private Logger logger= LoggerFactory.getLogger(HelloService.class);

    @Autowired
    RestTemplate restTemplate;

    public Object ribbonTest(){
        return restTemplate.getForObject("http://service-hi/hello?say=大家好",Object.class);
    }

}

服务已经注册到中心
这时我们重复请求 http://admin_pc:8764/ribbon
请求已经通过ribbon 发送到 eurake client
图片描述
ribbon 负载均衡策略配置
配置文件中添加:

#ribbon 负载均衡策略配置
service-hi:
  ribbon:
    NFLoadBalancerRuleClassName: com.netflix.loadbalancer.RandomRule

参考地址:
spring-cloud-ribbon
csdn

点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 1
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消