一個項目可能由於各種原因會存在多個語言編寫的系統同時存在,但主項目如果採用的SpringCloud框架的話就無法通過微服務方式訪問其他的異構系統,因此SpringCloud 生態圈給我們提供了很好的插件式服務,利用 sidecar 我們也可以輕鬆方便的集成異構系統到我們自己的系統來。
1.創建一個SpringBoot服務
2.添加 maven 引用包
<!-- 異構系統模塊 --> <dependency> <groupId>com.alibaba.cloud</groupId> <artifactId>spring-cloud-starter-alibaba-sidecar</artifactId> <version>2.1.3.RELEASE</version> </dependency>
3.添加應用配置
application.yml中添加:
# 配置異構服務
sidecar:
port: ${sidecar-port:3000}
ip: ${ip-address:localhost}
health-check-url: http://${ip-address:localhost}:${sidecar.port}/health
注意:在老版本中需要添加sidecar微服務啓動類註解@EnableSidecar,如果添加文中的依賴的話是不需要的,默認是開啓。
sidecar-port指的是代理MVC服務的端口,ip指的是代理MVC服務的ip,MVC服務需要添加一個健康檢測的health接口,如果是最新的Cloud框架爲/actuator/health
4.運行此服務
可以看到註冊到註冊中心的服務ip和端口爲MVC服務的,其它服務通過服務名可直接訪問到此MVC服務。