功能:提供客户端小程序开发定制的软件和服务调用
对比:Nginx,小程序开发定制服务器负载均衡,客户端的所有i请求都会交给Nginx,然后由Nginx实现服务转发请求。
进程内LB:消费方从服务获知有哪些地址可用,然后自己再从这些地址中选择一个合适的服务器。
Ribbon核心组件IRule
实现类 负载均衡算法
com.netflix.loadbalancer.RoundRobinRule 轮询
com.netflix.loadbalancer.RandomRule 随机
com.netflix.loadbalancer.RetryRule 先按照RoundRobinRule的策略获取服务,如果获取失败则在指定时间内进行重试,获取可用的服务
WeightedResponseTimeRule 对RoundRobinRule的扩展,响应速度越快的实例选择权重越大,越容易被选中
BestAvailableRule 会先过滤掉由于多次访问故障而处于断路跳闸状态的服务,然后选择一个并发量小的服务
AvailabilityFilteringRule 先过滤掉故障实例,然后再选择并发量小的实例
ZoneAvoidanceRule 默认规则,复合判断server所在区域的性能和server的可用性选择服务器