关于微服务之间的调用
注册到eureka server的各个微服务之间, 可以通过springcloud 自带的组件实现服务之间的调用
-
Ribbon 方式调用 —> Ribbon 是一个客户端负载均衡器,可以很好的控制 HTTP 和 TCP 客户端的行为
- 启动类中完成注入, @LoadBlanced 开启负载均衡的功能
- 在Controller中,中通过 RestTemplate 调用服务接口,与常见的 RestTemplate 不同的是,调用使用的不再是 ip + port,而是服务名。这是通过注册中心(Eureka Server)实现的。
-
Feign 方式调用 —> Feign 可以实现声明式的 Web 服务客户端
- 通过 @FeignClient 指定调用的服务名称
- 在接口上声明 @RequestMapping 指明调用服务的地址与请求类型
- 通过在 @FeignClient 中配置 fallback 指定熔断,(服务降级 ??)
- 实现接口,熔断