如何在没有spring-boot的情况下使用eureka+feign?

Posted

技术标签:

【中文标题】如何在没有spring-boot的情况下使用eureka+feign?【英文标题】:How to use eureka+feign without spring-boot? 【发布时间】:2016-09-20 21:46:28 【问题描述】:

我有一个eureka 服务器和一些服务(spring-boot 应用程序),它们注册到eureka 并使用Feign 相互通信。我还有一个使用 spring 的大型旧应用程序。它被打包到war 并部署到jetty server。我无法使用spring-boot 重写它,但应用程序必须通过FeignEureka 与其他服务通信。如果有帮助,我也可以在应用程序中使用spring-cloud

没有spring-boot我怎么能使用eureka+feign?请帮我。

【问题讨论】:

我正在考虑做同样的事情。您是否有幸在没有 Spring Boot 的情况下创建了 Ribbon 客户端? 参考***.com/questions/35409492/… 【参考方案1】:

spring-boot 旨在在您的应用程序的类路径中添加额外的 jar,仅此而已,考虑到这个想法,我想是的,您可以毫无问题地使用 eureka 和 Feign,您应该只检查哪些 jar被包裹在 spring-boot 应用程序中,并将它们添加到您现有的 spring 应用程序中,以获取 eureka 并假装运行

【讨论】:

【参考方案2】:

场景一:Spring Boot 应用作为 API 消费者。

在这种情况下,最简单的方法就是像这样添加一些配置:

say-hello:
  ribbon:
   eureka:
    enabled: false
  listOfServers: localhost:8090,localhost:9092,localhost:9999
  ServerListRefreshInterval: 15000

在此之后你可以使用 FeignClient 与旧应用进行通信。

更多详情请看:https://spring.io/guides/gs/client-side-load-balancing/

场景 2:作为 API 使用者的旧应用程序

请参考: https://github.com/Netflix/eureka/wiki/Eureka-REST-operations

Eureka已经提供了rest操作,可以查询服务实例信息。

【讨论】:

以上是关于如何在没有spring-boot的情况下使用eureka+feign?的主要内容,如果未能解决你的问题,请参考以下文章

如何在不依赖 MongoDB 的情况下启动 spring-boot 应用程序?

如何在 Spring-boot 中不模拟服务类的情况下为 REST 控制器端点编写单元测试

如何在不包含所有spring-boot库的情况下将spring-boot应用程序部署到nexus?

在不使用 spring-boot 执行器的情况下将来自 spring 应用程序的指标公开给 prometheus

如何按键重新创建表格?

如何在不影响原始 bean 的“客户”的情况下声明另一个 Jackson ObjectMapper?