php-fpm連接模式下使用pcntl_fork創(chuàng)建子進(jìn)程,一段最簡單的代碼如:<?phpfor ($i = 0;$i < 2;$i++) { pcntl_fork(); print_r('-');
}在cli模式下輸出6個‘-’,但是在php-fpm連接模式下只會輸出2個‘-’,即php-fpm連接時只能輸出主進(jìn)程或某個子進(jìn)程的結(jié)果。如何能在php-fpm下獲得所有輸出,或者php-fpm下php的輸出結(jié)果是輸出到哪里?有沒人遇到過這問題?
2 回答

喵喵時光機(jī)
TA貢獻(xiàn)1846條經(jīng)驗(yàn) 獲得超7個贊
沒遇到過。我ubuntu下用apt-get安裝的php-fpm默認(rèn)是禁用pcntl模塊的,也把這些函數(shù)都寫到了disabled_functions里面了。
php-fpm自己有一個管理進(jìn)程,本來就不應(yīng)該使用這個函數(shù),否則行為會不確定,比如說管理進(jìn)程可能會殺掉過多的進(jìn)程。

有只小跳蛙
TA貢獻(xiàn)1824條經(jīng)驗(yàn) 獲得超8個贊
pcntl_fork是只能在cli下的,php-fpm不支持,要想做到,可以在php-fpm下調(diào)system方法或popen方法去執(zhí)行一個cli程序
- 2 回答
- 0 關(guān)注
- 178 瀏覽
添加回答
舉報
0/150
提交
取消