java - AWS Elastic BeansTalk Nginx 超时 504 错误网关 - Java Servlet AsyncContext

标签 java http amazon-web-services servlets nginx

我已成功运行 Java servlet 应用程序测试,该应用程序在 Amazon AWS Elastic BeansTalk 提供的基本示例应用程序上运行。 Java-Gradle-Jetty 平台。 现在,无论我做什么,我都无法让 servlet 与客户端保持连接超过 50 秒。 我试过的东西。 Nginx proxy_read_timeout 有效! proxy_send_timeout 不起作用。 负载平衡器空闲超时确实有效.. keepalive_timeout 不起作用。

我试过这些设置和其他一些设置,所以我越来越熟悉并且可以限制或增加超时,但仅限于 50 秒。通过我收到 504 Bad Gateway 错误,这意味着连接已关闭。 我还在 nginx 服务器的 error.log 中收到此错误。 {sometime} [error] 23115#0: *2 upstream timed out (110: Connection timed out) while reading response header from upstream, client: {Some IP}, server: ,请求:“GET/{some path} HTTP/1.1”,上游:“http://127.0.0.1:5000/publish”,主机:“{Some Load Balancer URL}.us-west-1.elb.amazonaws.com”

我将不胜感激,我已经度过了几个不眠之夜。

最佳答案

它最终成为需要传递到 location 部分下的 nginx 配置文件的两个属性。

proxy_send_timeout 和 proxy_read_timeout

只需将它们设置为您想要的任何时间(以秒为单位)并结合 ELB(负载均衡器)超时。

希望它对某人有用。

关于java - AWS Elastic BeansTalk Nginx 超时 504 错误网关 - Java Servlet AsyncContext,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42011788/

相关文章:

java - Wildfly 增加线程数

django - 如何在aws elasticbean上安装redis和celery

java - 如何从Java读取Excel中删除空格

python - 如何使用 python 成功下载字节范围而不是完整文件?

iphone - 后台 iPhone 中的多个异步 HTTP 请求

java - GWT 网络应用程序 : How to maintian logged in state?

postgresql - 将 AWS PostgreSQL 连接到 Power BI Desktop :The specified hostname was not present in the certificate

python - 在哪里可以找到使用 boto3 编写自定义 AWS 凭证提供程序的文档?

java - 当我们在类中定义接口(interface)的抽象方法时,我们是 'override' 还是 'implement' 或者简单地说 'define' 这些方法?

java - Marshmallow 上 native WebView 中的 Instagram 链接