我有一个websocket服务器偶尔会在传入的连接上停顿。我可以通过telnet server.tld 8080
连接而不输入任何内容来重现此行为。
当我通过telnet连接但没有输入任何内容时,服务器会检测到传入的连接,但stream_socket_accept()
调用将停止一分钟。整整60秒。每一次。
使这种情况变得更糟的是stream_socket_accept()
完全忽略了超时变量AND default_socket_timeout
。
我可以做些什么来中止拖延?
答案 0 :(得分:1)
default_socket_timeout被忽略,因为套接字服务器以php-cli运行。所以加载的php.ini文件与php的apache模块版本不同。我不知道这个。虽然stream_socket_accept无法正常工作,但{{1}}
可以强制超时