Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/245.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 自动重新启动棘轮网箱_Php_Websocket_Ratchet - Fatal编程技术网

Php 自动重新启动棘轮网箱

Php 自动重新启动棘轮网箱,php,websocket,ratchet,Php,Websocket,Ratchet,我对旧的WebSocket系统有问题。它是在Ubuntu14.04和PHP5.4上构建的,并使用Ratchet。我们正在经历WebSocket在一两个月内停止工作的情况。当我们重新启动WebSocket时,一切都会恢复正常 我相信这个问题是由于用户连接过载造成的。我想要一个脚本来检测这个重载,并使用管理器重新启动WebSockets服务 我使用以下命令重新启动它: >>Commands to kill background process $ ps -ef | grep superv

我对旧的WebSocket系统有问题。它是在Ubuntu14.04和PHP5.4上构建的,并使用Ratchet。我们正在经历WebSocket在一两个月内停止工作的情况。当我们重新启动WebSocket时,一切都会恢复正常

我相信这个问题是由于用户连接过载造成的。我想要一个脚本来检测这个重载,并使用
管理器
重新启动WebSockets服务

我使用以下命令重新启动它:

>>Commands to kill background process
$ ps -ef | grep supervisord
$ sudo kill -s SIGTERM 9384

Restart the WebSockets to run in the background
$ sudo supervisord -c supervisor.conf
你认为是什么导致了这个问题

错误日志问题:

[Mon Apr 13 18:57:34.357822 2020] [:error] [pid 27023] [client 127.0.0.1:43760] PHP Fatal error:  Allowed memory size of 1073741824 bytes exhausted (tried to allocate 82 bytes) in /var/www/html/webservices/system/database/drivers/mysql/mysql_result.php on line 153
[Tue Apr 14 02:10:41.075838 2020] [ssl:error] [pid 3617] AH02032: Hostname <host ip>:443 provided via SNI and hostname <host ip> provided via HTTP are different
[Tue Apr 14 03:22:07.072937 2020] [ssl:error] [pid 4922] AH02032: Hostname <host ip>:443 provided via SNI and hostname <host ip> provided via HTTP are different
[Tue Apr 14 18:21:52.864750 2020] [:error] [pid 6628] [client 127.0.0.1:34265] PHP Fatal error:  Allowed memory size of 1073741824 bytes exhausted (tried to allocate 81 bytes) in /var/www/html/webservices/system/database/drivers/mysql/mysql_result.php on line 153
[Tue Apr 14 22:33:53.375819 2020] [ssl:error] [pid 14950] AH02032: Hostname <host ip>:443 provided via SNI and hostname <host ip> provided via HTTP are different
[Wed Apr 15 16:06:11.168718 2020] [:error] [pid 19246] [client 127.0.0.1:49378] PHP Fatal error:  Allowed memory size of 1073741824 bytes exhausted (tried to allocate 32 bytes) in /var/www/html/webservices/system/database/drivers/mysql/mysql_result.php on line 153
[Wed Apr 15 23:28:21.148510 2020] [ssl:error] [pid 27390] AH02032: Hostname <host ip>:443 provided via SNI and hostname <host ip> provided via HTTP are different
[Thu Apr 16 01:05:48.520618 2020] [ssl:error] [pid 28378] AH02032: Hostname <host ip>:443 provided via SNI and hostname <host ip> provided via HTTP are different
[Thu Apr 16 14:48:42.128930 2020] [:error] [pid 30021] [client 127.0.0.1:36520] PHP Fatal error:  Allowed memory size of 1073741824 bytes exhausted (tried to allocate 128 bytes) in /var/www/html/webservices/system/database/drivers/mysql/mysql_result.php on line 153
[Thu Apr 16 18:00:24.425987 2020] [:error] [pid 4302] [client 127.0.0.1:41767] PHP Fatal error:  Uncaught exception 'GuzzleHttp\\Exception\\ServerException' with message 'Server error: `POST https://api.dropboxapi.com/2/files/delete` resulted in a `500 Internal Server Error` response' in /var/www/html/webservices/application/vendor/guzzlehttp/guzzle/src/Exception/RequestException.php:113\nStack trace:\n#0 /var/www/html/webservices/application/vendor/guzzlehttp/guzzle/src/Middleware.php(65): GuzzleHttp\\Exception\\RequestException::create(Object(GuzzleHttp\\Psr7\\Request), Object(GuzzleHttp\\Psr7\\Response))\n#1 /var/www/html/webservices/application/vendor/guzzlehttp/promises/src/Promise.php(203): GuzzleHttp\\Middleware::GuzzleHttp\\{closure}(Object(GuzzleHttp\\Psr7\\Response))\n#2 /var/www/html/webservices/application/vendor/guzzlehttp/promises/src/Promise.php(156): GuzzleHttp\\Promise\\Promise::callHandler(1, Object(GuzzleHttp\\Psr7\\Response), Array)\n#3 /var/www/html/webservices/application/vendor/guzzlehttp/promises/src/TaskQueue.php(47): GuzzleHttp\\Promise\\Promise::GuzzleHttp\\Promise\\{closure}()\n#4 /var/www/html/webserv in /var/www/html/webservices/application/vendor/kunalvarma05/dropbox-php-sdk/src/Dropbox/Http/Clients/DropboxGuzzleHttpClient.php on line 59
[Thu Apr 16 23:45:36.114882 2020] [ssl:error] [pid 7753] AH02032: Hostname <host ip>:443 provided via SNI and hostname <host ip> provided via HTTP are different
[Fri Apr 17 09:19:14.032025 2020] [ssl:error] [pid 12322] AH02032: Hostname <host ip>:443 provided via SNI and hostname <host ip> provided via HTTP are different
[Fri Apr 17 15:29:58.370035 2020] [:error] [pid 10771] [client 127.0.0.1:52465] PHP Fatal error:  Allowed memory size of 1073741824 bytes exhausted (tried to allocate 32 bytes) in /var/www/html/webservices/system/database/drivers/mysql/mysql_result.php on line 153
[Fri Apr 17 20:38:41.862722 2020] [ssl:error] [pid 19076] AH02032: Hostname <host ip>:443 provided via SNI and hostname <host ip> provided via HTTP are different
[Sat Apr 18 07:01:04.956983 2020] [proxy:error] [pid 23882] (110)Connection timed out: AH00957: WS: attempt to connect to 127.0.0.1:8443 (localhost) failed
[Sat Apr 18 07:01:04.957045 2020] [proxy:error] [pid 23882] AH00959: ap_proxy_connect_backend disabling worker for (localhost) for 60s
[Sat Apr 18 07:01:04.957056 2020] [proxy_wstunnel:error] [pid 23882] [client 129.205.113.147:4058] AH02452: failed to make connection to backend: localhost
[Sat Apr 18 12:37:54.338291 2020] [authz_core:error] [pid 27365] [client 129.28.175.79:45909] AH01630: client denied by server configuration: /var/www/html/.php
[Sat Apr 18 16:28:38.481429 2020] [:error] [pid 24606] [client 127.0.0.1:40566] PHP Fatal error:  Allowed memory size of 1073741824 bytes exhausted (tried to allocate 72 bytes) in /var/www/html/webservices/application/models/webservice_model.php on line 1011
[Sat Apr 18 22:45:45.094137 2020] [ssl:error] [pid 32644] AH02032: Hostname <host ip>:443 provided via SNI and hostname <host ip> provided via HTTP are different
[Mon Apr 13 18:57:34.357822 2020][:error][pid 27023][client 127.0.0.1:43760]PHP致命错误:第153行/var/www/html/webservices/system/database/drivers/mysql/mysql_result.PHP中允许的内存大小为1073741824字节(试图分配82字节)
[星期二4月14日02:10:41.075838 2020][ssl:错误][pid 3617]AH02032:通过SNI提供的主机名:443与通过HTTP提供的主机名不同
[星期二4月14日03:22:07.072937 2020][ssl:错误][pid 4922]AH02032:通过SNI提供的主机名:443与通过HTTP提供的主机名不同
[Tue Apr 14 18:21:52.864750 2020][:error][pid 6628][client 127.0.0.1:34265]PHP致命错误:第153行/var/www/html/webservices/system/database/drivers/mysql/mysql_result.PHP中允许的内存大小为1073741824字节(试图分配81字节)
[星期二4月14日22:33:53.375819 2020][ssl:错误][pid 14950]AH02032:通过SNI提供的主机名:443与通过HTTP提供的主机名不同
[Wed Apr 15 16:06:11.168718 2020][:error][pid 19246][client 127.0.0.1:49378]PHP致命错误:第153行/var/www/html/webservices/system/database/drivers/mysql/mysql_result.PHP中允许的内存大小为1073741824字节(试图分配32字节)
[Wed Apr 15 23:28:21.148510 2020][ssl:error][pid 27390]AH02032:通过SNI提供的主机名:443与通过HTTP提供的主机名不同
[Thu Apr 16 01:05:48.520618 2020][ssl:错误][pid 28378]AH02032:通过SNI提供的主机名:443与通过HTTP提供的主机名不同
[Thu Apr 16 14:48:42.128930 2020][:error][pid 30021][client 127.0.0.1:36520]PHP致命错误:第153行/var/www/html/webservices/system/database/drivers/mysql/mysql_result.PHP中允许的内存大小为1073741824字节(试图分配128字节)
[Thu Apr 16 18:00:24.425987 2020][:错误][pid 4302][client 127.0.0.1:41767]PHP致命错误:未捕获异常“GuzzleHttp\\exception\\ServerException”,消息为“服务器错误:`POSThttps://api.dropboxapi.com/2/files/delete`导致/var/www/html/webservices/application/vendor/guzzlehttp/guzzle/src/Exception/RequestException.php:113\n堆栈跟踪:\n#0/var/www/html/webservices/application/vendor/guzzlehttp/guzzlehttp/src/Middleware.php(65):guzzlehttp\\Exception\\RequestException::create(Object(guzzlehttp\\Psr7\\Request),Object(guzzlehttp\\Psr7\\Response))\n#1/var/www/html/webservices/application/vendor/guzzlehttp/promises/src/promises.php(203):guzzlehttp\\Middleware::guzzlehttp\\\\\{\\{closure}(Object(GuzzleHttp\\Psr7\\Response))\n#2/var/www/html/webservices/application/vendor/GuzzleHttp/promises/src/Promise.php(156):GuzzleHttp\\Promise\\Promise::callHandler(1,对象(GuzzleHttp\\Psr7\\Response),数组)\n#3/var/www/html/webservices/application/vendor/GuzzleHttp/promises/src/TaskQueue.php(47):GuzzleHttp\\Promise\\Promise::GuzzleHttp\\Promise\\{closure}()\n#4/var/www/html/webserv in/var/www/html/webservices/application/vendor/kunalvarma05/dropbox php sdk/src/dropbox/Http/Clients/DropboxGuzzleHttpClient.php第59行
[Thu Apr 16 23:45:36.114882 2020][ssl:错误][pid 7753]AH02032:通过SNI提供的主机名:443与通过HTTP提供的主机名不同
[Fri Apr 17 09:19:14.032025 2020][ssl:错误][pid 12322]AH02032:通过SNI提供的主机名:443与通过HTTP提供的主机名不同
[Fri Apr 17 15:29:58.370035 2020][:error][pid 10771][client 127.0.0.1:52465]PHP致命错误:第153行/var/www/html/webservices/system/database/drivers/mysql/mysql_result.PHP中允许的内存大小为1073741824字节(试图分配32字节)
[Fri Apr 17 20:38:41.862722020][ssl:error][pid 19076]AH02032:Hostname:443通过SNI提供与通过HTTP提供的主机名不同
[Sat Apr 18 07:01:04.956983 2020][proxy:error][pid 23882](110)连接超时:AH00957:WS:尝试连接到127.0.0.1:8443(本地主机)失败
[Sat Apr 18 07:01:04.957045 2020][proxy:error][pid 23882]AH00959:ap_proxy_connect_后端禁用(本地主机)的工作程序60秒
[Sat Apr 18 07:01:04.957056 2020][Proxywstunnel:error][pid 23882][client 129.205.113.147:4058]AH02452:无法连接到后端:本地主机
[Sat Apr 18 12:37:54.338291 2020][authz_core:error][pid 27365][client 129.28.175.79:45909]AH01630:客户端被服务器配置拒绝:/var/www/html/.php
[Sat Apr 18 16:28:38.481429 2020][:error][pid 24606][client 127.0.0.1:40566]PHP致命错误:第1011行/var/www/html/webservices/application/models/webservice_model.PHP中允许的内存大小为1073741824字节(试图分配72字节)
[Sat Apr 18 22:45:45.094137 2020][ssl:error][pid 32644]AH02032:Hostname:443通过SNI提供,而通过HTTP提供的则不同

请将与问题相关的错误日志添加到您的问题中。@user254694发布了错误,我发现了。在所有错误中,我只发现了一个错误
(110)连接超时:AH00957:WS:尝试连接到127.0.0.1:8443(localhost)失败
我认为它属于WebSocket。错误很明显,您的服务器正在使用其允许使用的全部1go ram,要么增加ram,要么调试消耗过多内存的元素并加以改进,1go不是很大,但对于ws-server来说也不是一个小数目,您正在接收多少连接beca使用时,可能会出现小内存泄漏