建站一条龙,网站建设公司上海站霸,免费ppypp网站,高端品牌网站建设网站开发注意什么一、Ribbon负载均衡
一个服务对应一个LoadBalancer#xff0c;一个LoadBalancer只有一个Rule#xff0c;LoadBalancer记录服务的注册地址#xff0c;提供更新服务的注册地址#xff0c;Rule提供从服务的注册地址中找出一个地址的规则。 二、 自定义负载均衡
本文自定义负…一、Ribbon负载均衡
一个服务对应一个LoadBalancer一个LoadBalancer只有一个RuleLoadBalancer记录服务的注册地址提供更新服务的注册地址Rule提供从服务的注册地址中找出一个地址的规则。 二、 自定义负载均衡
本文自定义负载均衡规则提供根据指定URI优先转发到特定的机器的功能。 三、实现代码
1负载均衡实现类
public class MicroServiceLoadBalancerT extends Server extends DynamicServerListLoadBalancerT {public MicroServiceLoadBalancer() {}public MicroServiceLoadBalancer(IClientConfig clientConfig, IRule rule, IPing ping, ServerListT serverList, ServerListFilterT filter, ServerListUpdater serverListUpdater) {super(clientConfig, rule, ping, serverList, filter, serverListUpdater);}public MicroServiceLoadBalancer(IClientConfig clientConfig) {super(clientConfig);}Overridepublic String toString() {StringBuilder sb new StringBuilder(MicroServiceLoadBalancer:);sb.append(super.toString());sb.append(ServerList: String.valueOf(getServerListImpl()));return sb.toString();}
}
2application.yaml文件1配置
micro-service:ribbon:NFLoadBalancerClassName: com.mk.springcloud.gateway.loadbalance.MicroServiceLoadBalancer
3代码配置
public class MicroRibbonConfig {Beanpublic ILoadBalancer microILoadBalancer(IClientConfig config, ServerListServer serverList, ServerListFilterServer serverListFilter, IRule rule, IPing ping, ServerListUpdater serverListUpdater) {return new MicroServiceLoadBalancer(config, rule, ping, serverList,serverListFilter, serverListUpdater);}}RibbonClient(name micro-service, configuration MicroRibbonConfig.class)
public class RibbonClientConfig {}