首页 > 解决方案 > 在 Dropwizard 配置中启用 Keep-Alive 设置

问题描述

我在应用程序负载均衡器日志中观察到很多 5xx 错误。我有一个 dropwizard 应用程序监听 ALB 后面的 HTTP 请求。在阅读 ALB 时,我发现 AWS 文档说:-

如果您使用 HTTP 和 HTTPS 侦听器,我们建议您为您的实例启用 HTTP keep-alive 选项。您可以在 Web 服务器设置或实例的内核设置中启用 keep-alive。启用 Keep-alive 后,负载均衡器可以重用与您的实例的连接,从而降低 CPU 利用率。为确保负载均衡器负责关闭与您的实例的连接,请确保您为 HTTP 保持活动时间设置的值大于负载均衡器上的空闲超时设置。

我当前的 dropwizard configuration.yml 文件是

server:
  maxThreads: 100
  maxQueuedRequests: 10
  applicationContextPath: /e2e
  applicationConnectors:
    - type: http
      port: 8080

  adminConnectors:
    - type: http
      port: 8081

我的 ELB 空闲超时设置为 60 秒。但是读到这里我发现默认的 dropwizard 应用程序超时是 0ms。如何Keep-alive为我的 dropwizard 应用程序配置配置?

标签: amazon-web-servicesjettyload-balancingdropwizardelastic-load-balancer

解决方案


推荐阅读