1

我在互联网上找到的关于 Spring Cloud Netflix 的所有内容都是关于从使用 Boot 应用程序运行微服务@EnableEurekaClients等等。

现在我正在尝试将我的日志记录微服务连接到传统的战争应用程序(springmvc、jaxws 等)中——这是不能转换为 Boot 或以任何方式(通过技术任务)修改的遗留问题。

我创建了一个新的 maven 模块“log-server-client”,它对上层 Web 层一无所知,并打算在任何 maven 项目中用作简单的依赖项。

我应该如何为这个简单的依赖配置对 Spring Cloud Netflix 的访问?至少,如何配置 Eureka 和 Ribbon?

我刚刚从中提取了一些代码行RestTemplate并创建了我的自定义JmsTemplate(微服务与 jms 与 apache camel 和 activemq 进行远程处理),它是如何完成的RestTemplate,但是这段代码仍然缺乏与基础设施的连接

afaik,我们可以创建一个全局单例bean,从这个bean运行一个单独的线程,从这个线程运行Boot app,但是你不觉得它很丑陋,会导致问题吗?它究竟应该如何使用?

4

1 回答 1

2

好问题!

一种方法是使用“sidecar”。这似乎是一个伴随的 Spring Boot 应用程序,它代表您的传统 Web 应用程序向 Eureka Server 注册。

参见例如:

http://www.java-allandsundry.com/2015/09/spring-cloud-sidecar.html

http://cloud.spring.io/spring-cloud-netflix/spring-cloud-netflix.html#_polyglot_support_with_sidecar

另一种方法是使用以下库:

“一个允许在 Eureka 服务发现中注册遗留应用程序的小库。”

https://github.com/sawano/eureka-legacy-registrar

这个库可以在 Spring Boot 之外使用。

于 2016-10-07T08:31:08.253 回答