1 引言

在SpringCloud的项目中,需要接入一些非Java的程序,第三方接口,无法接入eureka,hystrix,feign等等组件。启动一个代理的微服务,代理微服务去和非Java的程序或第三方接口交流,通过代理的微服务去计入SpringCloud的相关组件。

image.png

2 Sidecar实现

创建一个第三方的服务
创建一个SpringBoot工程,并且添加一个Controller

导入依赖

  1. <dependency>
  2. <groupId>org.springframework.cloud</groupId>
  3. <artifactId>spring-cloud-netflix-sidecar</artifactId>
  4. </dependency>
  5. <dependency>
  6. <groupId>org.springframework.cloud</groupId>
  7. <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
  8. </dependency>

添加注解

  1. @EnableSidecar

编写配置文件

  1. server:
  2. port: 81
  3. # 指定Eureka服务地址
  4. eureka:
  5. client:
  6. service-url:
  7. defaultZone: http://root:root@localhost:8761/eureka,http://root:root@localhost:8762/eureka
  8. # 指定服务名称
  9. spring:
  10. application:
  11. name: other-service
  12. # 指定代理的第三方服务
  13. sidecar:
  14. port: 7001