Eureka负载均衡配置

472 阅读1分钟

基于上一篇远程调用服务,基础上加了负载均衡策略

 <dependency>
            <groupId>com.netflix.ribbon</groupId>
            <artifactId>ribbon-loadbalancer</artifactId>
            <version>2.7.17</version>
            <scope>compile</scope>
        </dependency>

因为服务提供方很可能不知一个,所以需要均衡一下 注入bean,在服务端或者消费端注入都可以

	public IRule myRule(){
		//return new RoundRobinRule();
		//return new RandomRule();
		return new RoundRobinRule();
	}}

也可用自己配置负载均衡策略

简单就用new random() 轮询的话,

AtomicInteger atomicInteger = new AtomicInteger();
		int andIncrement = atomicInteger.getAndIncrement();
		
		List<InstanceInfo> provider = client.getInstancesByVipAddress("PROVIDER", false);
		provider.get(andIncrement%provider.size());