繁体   English   中英

Sockets 在 AWS EC2 上的某个时间后花费太多时间连接 (t3a.small)

[英]Sockets taking too much time to connect after sometime on AWS EC2 (t3a.small)

我已经在 Amazon EC2 t3a.small实例上部署了ws sockets。 当我启动/重新启动 sockets 时,它可以正常工作一段时间。 但是几分钟后,当我尝试连接到 sockets 时,连接需要一分钟以上,有时会触发超时。

所以我将实例更改为t3a.medium ,现在它运行良好。 即使在几个小时后,我也没有看到 sockets 的连接/超时有任何延迟。

当我检查这两个实例的性能时,RAM/CAPU 的使用并没有那么多。 RAM 使用率约为 300mb,两个内核的 CPU 使用率也没有达到 100%。 所以我不确定可能是什么问题。

我不认为更新实例类型是正确且可扩展的解决方案,随着流量的增加,我认为我会面临同样的问题?

我想知道什么是瓶颈以及我需要在 EC2 中设置哪些可扩展的配置?


更新

似乎实例大小不是问题。 即使将其更改为 t3a.medium 后,它也会在一段时间后变慢。 所以弄清楚可能是什么问题。

显然 Apache2 设置存在问题,该设置允许最多 150 个并发连接。

所以我调整了 Apache httpd 以允许更多的并发连接。

<IfModule mpm_event_module>
 StartServers 10
 MinSpareThreads 25
 MaxSpareThreads 750
 ThreadLimit 1000
 ThreadsPerChild 750
# MaxRequestWorkers aka MaxClients => ServerLimit *ThreadsPerChild
 MaxRequestWorkers 15000
 MaxConnectionsPerChild 0
 ServerLimit 20
 ThreadStackSize 524288
</IfModule>

请注意,您可能还需要更改操作系统的最大打开文件数。 默认情况下,它在 Ubuntu 中为 1024。 将其设置为 MAX (65536)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM