为 EC2 实例配置 keep-alive

Posted

技术标签:

【中文标题】为 EC2 实例配置 keep-alive【英文标题】:Configure keep-alive for EC2 instance 【发布时间】:2019-10-21 06:24:04 【问题描述】:

我有一个在 Python 实例上运行的 Django 应用程序,其中 nginx 作为网络服务器。

我的一项操作超时了 60 秒。根据文档,您希望将负载均衡器的空闲超时时间增加到默认 60 秒以上 (https://docs.aws.amazon.com/elasticloadbalancing/latest/application/application-load-balancers.html)

它还说:

我们建议您为 EC2 实例启用 HTTP keep-alive 选项。您可以在 EC2 实例的 Web 服务器设置中启用 HTTP keep-alive

好吧,我不确定如何执行此操作或该设置在哪里。谁能指出keep-alive 选项在哪里?

【问题讨论】:

这不是 EC2 特定的东西。在您的情况下,您需要在 Nginx 配置中查找 keep-alive 设置。 【参考方案1】:

我现在遇到了同样的问题,并得出结论,这只是 docco 的措辞不佳,正如 Mark B 在他的评论中所建议的那样,它指的是从您的 nginx/apache 设置 Keep-Alive 标头webserver 配置而不是 ec2 实例本身。

【讨论】:

【参考方案2】:
sendfile            on;
tcp_nopush          on;
tcp_nodelay         on;
**keepalive_timeout   65;**
types_hash_max_size 2048;

【讨论】:

你能帮助 OP 准确地指出你正在设置这个选项的文件吗? 我也无法弄清楚如何为 apache 打开它。我在 php.ini 中没有看到任何带有“alive”的东西,有谁知道如何在 apache 上设置它?

以上是关于为 EC2 实例配置 keep-alive的主要内容,如果未能解决你的问题,请参考以下文章

aws平台中为ec2实例添加双网卡

在 AWS ec2 实例中配置 https://domainname:3000

Elastic Beanstalk 终止我的 EC2 实例

预配置的 EC2 *** AMI

从 EC2 访问 SQS - 实例配置文件与角色

python boto3将IAM角色附加/替换为ec2