繁体   English   中英

PHP-Swoole 错误 accept() failed, Error: Too many open files[24]

[英]PHP-Swoole error accept() failed, Error: Too many open files[24]

我已经在我的服务器上安装了 php/swoole 并使用Laravel swoole对其进行了配置

现在问题是一切正常,直到每秒总请求数增加超过 1000 个请求。
Swoole 将记录错误并且不响应用户!
我已将操作系统 ulimit 数设置为 50000
但仍然得到同样的错误! 在互联网上搜索,一无所获!
操作系统 Centos 7
服务器足以处理每秒超过 1k 的请求

如果您对此有任何经验,请与我分享

笔记:
当 swoole 启动时,它也会记录此错误:
set_max_connection:max_connection超过最大值,重置为1024

好的,我已经弄清楚了。
先说一下我是如何运行 PHP-Swoole 进程的:.
我在 centos 中做了一个 systemd 服务,以便在任何情况下始终启动 swoole 进程。
因此 ULimit 命令为您所在的当前 shell 设置 ulimit。 不是运行 swoole 启动器进程的 systemd shell ..
为此,您需要在 systemd [Service]部分块下添加LimitNOFILE=100000选项。
重新启动后一切正常。

暂无
暂无

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

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