非java异构服务如何集成到SpringCLoud集群中

  一个项目可能由于各种原因会存在多个语言编写的系统同时存在,但主项目如果采用的SpringCloud框架的话就无法通过微服务方式访问其他的异构系统,因此SpringCloud 生态圈给我们提供了很好的插件式服务,利用 sidecar 我们也可以轻松方便的集成异构系统到我们自己的系统来。

  如之前介绍过如此将NET MVC服务运行在Linux的容器中,此时就可以通过Sidecar组件将此服务集成到SpringCloud服务中作为普通的服务调用。

1.创建一个SpringBoot服务

2.添加 maven 引用包

添加SpringCloud相关依赖后添加如下依赖:
<!-- 异构系统模块 -->
<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服务。

posted @ 2023-03-13 08:39  欢醉  阅读(79)  评论(0编辑  收藏  举报