我们正在使用beyondcode laravel-websockets
服务,似乎每获得约1000个连接就重新启动该服务。
我已按照https://docs.beyondco.de/laravel-websockets/1.0/faq/deploying.html上的说明进行操作,并将软限制和硬限制设置为50000
sysad在dmesg中看到有关SYN泛洪的消息:
TCP: request_sock_TCP: Possible SYN flooding on port 6001. Sending cookies. Check SNMP counters.
因此,他将tcp_max_syn_backlog
从128增加到4096,然后又增加到8192。但是,dmesg中的SYN泛洪不断发生,并且大多与服务崩溃同时发生。接下来,我们将其添加到绝对不正确的地方:sysctl -w net.ipv4.tcp_max_syn_backlog=1000000
那不能解决问题,因此接下来他将net.core.somaxconn设置为128,然后设置为4096。(最大套接字积压)
看看仪表板,无论我们尝试了什么,我仍然可以看到服务器出现故障。
我正在努力找出问题所在-我曾尝试用thor锤击websocket,并用siege锤击http服务(例如auth),但我都无法用它破坏它。
根据文档,它应该能够处理15,000个并发连接:https://docs.beyondco.de/laravel-websockets/1.0/faq/scaling.html。
有人经历过吗?如果是这样,您做了什么来解决呢?有什么建议吗?
谢谢!