SpringCloud--OpenFeign与负载均衡

2年前 (2022) 程序员胖胖胖虎阿
174 0 0

本博客以深入理解Spring Cloud与实战[方剑/编著]一书进行学习和理解

如有侵权,请联系作者

  1. 什么是负载均衡

    是一种计算机技术,用来在多个计算机(计算机集群)、网络连接、CPU、磁盘驱动器或其他资源中分配负载

  2. 为什么要使用负载均衡

    以达到最优化资源使用、最大化吞吐率、最小化响应时间,同时避免出现过载的目的。

  3. 如何实现负载均衡

    • 随机(Random)算法:在实例列表中随机选择某个实例
    • 轮询(RoundRobin)算法:按顺序选择实例
    • 最少连接数(Least Connections)算法:每次取连接数最少的实例
    • 一致性哈希(Consistent Hashing)算法:基于一致性哈希算法总是将相同参数的请求落在同一个实例上
    • 权重随机(Weigthd Random):随机取一个数,根据这个数属于哪个范围选择对应的实例

负载均衡

一、自定义负载均衡【基于OpenFeign】

OpenFeign只是一种Rest客户端,本身不具备任何的负载均衡操作。 OpenFeign底层调用的还是Netflix Ribbon负载均衡组件。

实现

@Configuration
// name为服务名
@RibbonClient(name = "my-provider", configuration = MyLoadBalanceConfiguration.class)
public class MyLoadBalanceConfiguration {

    @Bean
    public IRule ribbonRule() {
        return new RandomRule(); // 采用随机策略
    }
}

不同的情况返回不同的策略即可,或者返回自定义策略,就是这么简单

版权声明:程序员胖胖胖虎阿 发表于 2022年10月30日 下午2:24。
转载请注明:SpringCloud--OpenFeign与负载均衡 | 胖虎的工具箱-编程导航

相关文章

暂无评论

暂无评论...