elastic-beanstalk http请求超时

Posted

技术标签:

【中文标题】elastic-beanstalk http请求超时【英文标题】:elastic-beanstalk http request timeout 【发布时间】:2021-04-16 13:08:11 【问题描述】:

我已经使用 elastic-beanstalk(Tomcat8 环境)部署了一个 webapp。 我的一个 REST API 请求大约需要 2 分钟(在服务器上)才能响应客户端。请注意,这是一个涉及多个 3rd 方系统调用的批量请求,因此最多需要 2 分钟,这对于业务来说是可以接受的(至少目前是这样)。 但是,我总是在 60 秒后在客户端收到以下错误:

我已将httpd.conf 文件中的TimeoutKeepAliveTimeout 参数更新为120 秒,并将Tomcat8 的server.xml 中的'connectionTimeout' 更改为120000。这两个都不起作用。

问题是 60 秒的超时值是从哪里来的,即在 elastic-beanstalk 中更改 60 秒的超时值是从哪里来的?对于较长的请求,如何在 elastic-beanstalk 中更改超时值?

请注意,没有为应用程序配置负载平衡器。

【问题讨论】:

这可能会有所帮助 - serverfault.com/questions/561901/… @smac2020:我的超时不是部署,而是请求 【参考方案1】:

检查这是否对您有帮助:https://zenofchicken.wordpress.com/2015/08/17/setting-the-http-connection-timeout-on-amazon-aws-elastic-beanstalk-tomcat-instances/

关于如何设置弹性负载的空闲超时有很多文章 balancer,tomcat的连接超时怎么设置,怎么做 它与 apache 服务器一起充当每个节点上的代理 弹性豆茎集群。

现在缺少的部分!当您将应用程序部署到 弹性beantalk环境,它执行优雅重启 阿帕奇。只有这个优雅的重启不能重置所有 你扔给它的设置。有些设置需要硬重启,比如 上面的 Timeout 3600 设置

另一个用户在选择一个不够强大的实例时遇到了与您类似的情况。 502 Proxy Error when accessing Elastic Beanstalk endpoint

【讨论】:

以上是关于elastic-beanstalk http请求超时的主要内容,如果未能解决你的问题,请参考以下文章

如何在 elastic-beanstalk 中应用 ruby​​ 版本补丁

如何在 AWS elastic-beanstalk 中更改我的 python 版本

让 django celery worker 在 elastic-beanstalk 上启动的问题

Request —— 让 Node.js http请求变得超简单

使用 EbCommands 部署 Laravel Aws Elastic-Beanstalk

Django AWS Elastic-Beanstalk WSGI.py 配置