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

Timer被系統(tǒng)清理掉了

秀才

1月31日上午8:54分在start_gateway.php中啟動的Timer,兩秒觸發(fā)一次,在第二天(上午0:33)的時候Timer不再觸發(fā)函數(shù)了。

[attach]240[/attach]

請問Gateway是否有崩潰日志,Timer停止是因為系統(tǒng)回收了還是代碼崩潰了或者是Timer是有最大計數(shù)的?

3969 4 0
4個回答

walkor 打賞

Timer不會自己消失,更不會被系統(tǒng)回收,這種問題絕大多數(shù)是業(yè)務(wù)問題,或者是開發(fā)者判斷失誤。

請仔細檢查自己的業(yè)務(wù)邏輯是否有問題,比如$openids是否可能為空,file_get_contents($callback)有可能一直阻塞不返回導(dǎo)致定時器卡主。如果$value='/tmp/queue/',exec("rm -rf /tmp/queue/") 會刪掉queue目錄的,foreach永遠將不會進入,也就沒有日志。

php start.php status 可以看到各個進程運行情況,包括gateway運行情況。

最后建議在Timer函數(shù)第一行就記錄個日志,看下是否有進入定時邏輯。如果發(fā)現(xiàn)定時器沒有運行,可以利用strace lsof兩個命令排查下進程卡在哪里,比如卡在url請求上

  • 暫無評論
秀才

多謝,我將排查一下這部分代碼,解決后會將解決方法貼上來。

  • 暫無評論
walkor 打賞

好的,感謝

  • 暫無評論
秀才

數(shù)據(jù)不再放在文件里,改為放在redis里,還可以做負載均衡。問題就這么解決了。

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