有個(gè)后臺(tái)業(yè)務(wù)任務(wù)使用workerman的定時(shí)器運(yùn)行,30秒運(yùn)行一次,業(yè)務(wù)代碼只有一行就是使用php的exec調(diào)用了一個(gè)外部程序,這個(gè)程序平均耗時(shí)2秒,整體業(yè)務(wù)最多耗時(shí)3秒左右,跑著跑著就卡死了,用strace追蹤,卡死在read操作上,好像是在等管道數(shù)據(jù)沒有等到!請(qǐng)問下,這個(gè)具體是什么原因造成的呢?現(xiàn)在
?
部分追蹤到的數(shù)據(jù)。
Process 6339 attached
22:27:14.918829 read(8,
?
--------------------------------------
?
php? ? ?6339 root? ? 5u? unix 0xffff880236c9f4c0? ? ? 0t0 174767200 socket
php? ? ?6339 root? ? 6u? unix 0xffff880236c9f140? ? ? 0t0 174767201 socket
php? ? ?6339 root? ? 7u? sock? ? ? ? ? ? ? ? 0,6? ? ? 0t0 174767229 can't identify protocol
php? ? ?6339 root? ? 8r? FIFO? ? ? ? ? ? ? ? 0,8? ? ? 0t0 176760067 pipe
?