【问题标题】:Spring Boot Apps with Single Port具有单端口的 Spring Boot 应用程序
【发布时间】:2018-04-07 14:17:58
【问题描述】:

目前,我有这样的基础设施。 客户端点击负载均衡器,它循环到我的应用程序服务器(JBOSS)。因此,很少有服务部署为提供 REST 端点的服务器中的战争。由于部署是战争,因此每个服务都通过应用程序服务器暴露给单个端口(传统方式)

我计划将我的服务从我的应用程序服务器中迁移出来(太重)并将其转换为 Spring Boot 应用程序 (JAR)。计划是像这样重新调整基础架构

所以我担心的是,当我转换为 spring boot jar 时,每个服务都会暴露给不同的端口。我不打算更改负载均衡器中的任何端口以避免与客户端冲突。

有什么方法可以通过识别上下文根将服务路由到应用程序上?

(我知道一个应用服务器可以解决这个问题。但只是想知道其他观点)

【问题讨论】:

    标签: spring-boot server spring-cloud spring-cloud-netflix


    【解决方案1】:

    由于您打算将应用程序转换为 Spring Boot,因此您也可以尝试一下Netflix Zuul

    Zuul 是一种边缘服务,可提供动态路由、监控、弹性、安全性等。

    在您的情况下,您不必创建过滤器。您可以简单地创建一个配置来将请求路由到您的 REST 端点。

    【讨论】:

      【解决方案2】:

      您可以将 NGINX 放在 Spring-Boot 应用程序的前面,将每个上下文路径转发到所需的端口。

      如您所说,应用服务器可以解决此问题,因此您只需使用其他工具(如 NGINX 或 Apache HTTP Server)复制此行为。

      【讨论】:

      • 谢谢,这听起来合乎逻辑
      猜你喜欢
      • 2017-03-07
      • 2015-07-25
      • 2019-07-29
      • 2014-01-31
      • 2022-01-15
      • 1970-01-01
      相关资源
      最近更新 更多