环境
eclipse 4.7
jdk 1.8
Spring Boot 1.5.2
Spring Cloud 1.2
主流的负载均衡技术有nginx、LVS、HAproxy、F5,Spring Cloud使用ribbon。
一、ribbon
ribbon是一个负载均衡客户端 类似nginx反向代理,可以很好的控制http和tcp的一些行为。Feign默认集成了ribbon。
二、案例
1、修改上一篇的service-member的controller
package com.wjy.controller; import java.util.ArrayList; import java.util.List; import org.springframework.beans.factory.annotation.Value; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; @RestController public class MemberController { @Value("${server.port}") private String serverPort; @RequestMapping("/getUserList") public List<String> getUserList() { List<String> listUser = new ArrayList<String>(); listUser.add("zhangsan"); listUser.add("lisi"); listUser.add("wjy"); listUser.add("端口号:"+serverPort); return listUser; } }
2、依次启动eureka-server,后启动service-member
修改application.yml后启动:
端口:8762,启动MemberApp -->service-member:8762
端口:8763,启动MemberApp -->service-member:8763
这样就会有两个service-member服务。
3、查看两个注册服务
4、启动sercice-order
sercice-order在pom里依赖了spring-cloud-starter-ribbon,默认使用轮询负载策略