国产+高潮+在线,国产 av 仑乱内谢,www国产亚洲精品久久,51国产偷自视频区视频,成人午夜精品网站在线观看

GatewayWorker運行四五小時后會出現(xiàn)process_timeout問題

chenxi

workerman.log中的信息
2019-01-04 12:30:15 pid:22312 process_timeout:#1 /usr/MDDeviceService/vendor/workerman/workerman/Events/Select.php(263): pcntl_signal_dispatch()

2 /usr/MDDeviceService/vendor/workerman/workerman/Worker.php(2096): Workerman\Events\Select->loop()

3 /usr/MDDeviceService/vendor/workerman/gateway-worker/src/BusinessWorker.php(190): Workerman\Worker->run()

4 /usr/MDDeviceService/vendor/workerman/workerman/Worker.php(1294): GatewayWorker\BusinessWorker->run()

5 /usr/MDDeviceService/vendor/workerman/workerman/Worker.php(1127): Workerman\Worker::forkOneWorkerForLinux(Object(GatewayWorker\BusinessWorker))

6 /usr/MDDeviceService/vendor/workerman/workerman/Worker.php(1100): Workerman\Worker::forkWorkersForLinux()

7 /usr/MDDeviceService/vendor/workerman/workerman/Worker.php(459): Workerman\Worker::forkWorkers()

8 /usr/MDDeviceService/start.php(52): Workerman\Worker::runAll()

9 {main}

4559 2 0
2個回答

walkor 打賞

Events.php的onMessage里的業(yè)務代碼執(zhí)行的太慢了,超過了30秒

  • chenxi 2019-01-07

    剛接觸這個框架,代碼都是之前同事寫的,若是要解決這個問題的話,可以從哪方便解決

  • walkor 2019-01-07

    把Events.php 里上面加上declare(ticks=1);,然后reload。下次發(fā)生process_timeout時一般會打印更詳細的調(diào)用棧,就能知道業(yè)務代碼是在哪一行執(zhí)行的慢

  • walkor 2019-01-07

    另外發(fā)生這種情況的時候一般會出現(xiàn)長時間busy的進程,通過手冊這個方法也大概能定位到
    http://doc.workerman.net/debug/busy-process.html

  • chenxi 2019-01-07

    好的,謝謝!

  • chenxi 2019-01-08

    你好,服務現(xiàn)在已經(jīng)運行了有大半年,代碼修復需要段時間,有沒有什么方法可以暫時解決這個問題?

  • chenxi 2019-01-08

    2019-01-08 10:37:22 pid:20248 process_timeout:

    1 [internal function]: GatewayWorker\Lib\Statement->__construct(Object(GatewayWorker\Lib\Database))

    2 /usr/MDDeviceService/Applications/MDDeviceServer/Events.php(375): PDO->query('INSERT INTO APP...')

    3 /usr/MDDeviceService/Applications/MDDeviceServer/Model/DEVModel/DEV_BODY_SIGN_Model.php(117): Events::saveDataToMSSQL(Array)

    4 /usr/MDDeviceService/Applications/MDDeviceServer/Model/DEVModel/DEV_BODY_SIGN_Model.php(45): DEV_BODY_SIGN_Model->update()

    5 /usr/MDDeviceService/Applications/MDDeviceServer/TransportProtocol.php(86): DEV_BODY_SIGN_Model->__construct('0100007064', 'A55A30313030303...')

    6 /usr/MDDeviceService/Applications/MDDeviceServer/Events.php(167): TransportProtocol::handle_data(Object(MDDataModel))

    7 [internal function]: Events::onMessage('c0a803660b54000...', 'rrrrrr')

    8 /usr/MDDeviceService/vendor/workerman/gateway-worker/src/BusinessWorker.php(384): call_user_func('Events::onMessa...', 'c0a803660b54000...', 'rrrrrr')

    9 [internal function]: GatewayWorker\BusinessWorker->onGatewayMessage(Object(Workerman\Connection\AsyncTcpConnection), Array)

    10 /usr/MDDeviceService/vendor/workerman/workerman/Connection/TcpConnection.php(657): call_user_func(Array, Object(Workerman\Connection\AsyncTcpConnection), Array)

    11 [internal function]: Workerman\Connection\TcpConnection->baseRead(Resource id #86)

    12 /usr/MDDeviceService/vendor/workerman/workerman/Events/Select.php(286): call_user_func_array(Array, Array)

    13 /usr/MDDeviceService/vendor/workerman/workerman/Worker.php(2096): Workerman\Events\Select->loop()

    14 /usr/MDDeviceService/vendor/workerman/gateway-worker/src/BusinessWorker.php(190): Workerman\Worker->run()

    15 /usr/MDDeviceService/vendor/workerman/workerman/Worker.php(1294): GatewayWorker\BusinessWorker->run()

    16 /usr/MDDeviceService/vendor/workerman/workerman/Worker.php(1127): Workerman\Worker::forkOneWorkerForLinux(Object(GatewayWorker\BusinessWorker))

    17 /usr/MDDeviceService/vendor/workerman/workerman/Worker.php(1100): Workerman\Worker::forkWorkersForLinux()

    18 /usr/MDDeviceService/vendor/workerman/workerman/Worker.php(1426): Workerman\Worker::forkWorkers()

    19 /usr/MDDeviceService/vendor/workerman/workerman/Worker.php(1375): Workerman\Worker::monitorWorkersForLinux()

    20 /usr/MDDeviceService/vendor/workerman/workerman/Worker.php(461): Workerman\Worker::monitorWorkers()

    21 /usr/MDDeviceService/start.php(52): Workerman\Worker::runAll()

  • walkor 2019-01-09

    業(yè)務處理慢只能業(yè)務想辦法??吹绞莍nsert比較慢,可能是onMessage里批量循環(huán)插入了太多的數(shù)據(jù)導致耗時很高,也可能是mysql死鎖或者高負載導致insert很慢

  • chenxi 2019-01-14

    怎么查看是不是由于數(shù)據(jù)庫慢導致的?

  • chenxi 2019-01-15

    @1:busy進程顯示了一下就消失了,無法用命令定位具體錯誤,請問還有其他辦法嘛?

  • walkor 2019-01-16

    短暫的busy是屬于正?,F(xiàn)象,不用處理

ncblkj

可以正常使用,但是運行一段時間1天左右吧,進程自動超期了,不知道怎么回事,可以取消判斷或則其它優(yōu)化方法嗎?

  • 暫無評論
年代過于久遠,無法發(fā)表回答
??