验证Spring Cloud调用异构微服务
-
在Spring Cloud项目的某个微服务中,编写Controller代码:
@GetMapping("/test-sidecar") @Bulkhead(name = "testSidecar") @CircuitBreaker(name = "testSidecar") public String testSidecar() ( //http://localhost:8060 //这段代码有服务发现,负载均衡 return this.restTemplate.getForObject( //这里的url为,sidecar注册到consul的微服务名称 url: "http://sidecar", String.class ); }
异构微服务调用Spring Cloud
Alibaba Sidecar是基于Spring Cloud Gateway的
所以,异构微服务可以利用sidecar的网关功能去调用Spring Cloud微服务的api
-
sidecar配置文件增加以下配置:
spring: cloud: gateway: discovery: locator: #让gateway从服务发现组件找到微服务,并反向代理 enabled: true
-
重启sidecar
异构微服务想要调用Spring Cloud微服务的api,完全是把sidecar当做网关来用,而网关已经实现了服务发现,负载均衡,并且也可以整合hystrix/resilience4j去实现容错.