springcloud-基于RestTemplate的服务调用
1.服务productservices
@RestController public class ProductController { @RequestMapping("/product/findAll") public Map findAll(){ Map map = new HashMap(); map.put("111","苹果手机"); map.put("222","苹果笔记本"); return map; } }
2.服务userservices
@RestController public class UserController { @RequestMapping("/user/showProductMsg") public String showProductMsg(){ RestTemplate restTemplate = new RestTemplate(); String msg = restTemplate.getForObject("http://127.0.0.1:9001/product/findAll",String.class); return msg; } }
3.问题
1.直接使用restTemplate方式调用没有经过服务注册中心获取服务地址,代码写死不利于维护,当服务宕机时不能高效剔除。
2.调用服务时没有负载均衡需要自己实现负载均衡策略。