標(biāo)題里說的'重置'可能不準(zhǔn)備。下面是我的問題
當(dāng)我在代碼里使用sleep()
這個函數(shù),然后使用php start.php status
命令查看進(jìn)程時,http響應(yīng)會立刻返回,是什么情況呢?
我本意是,寫一個接口,故意10s后返回結(jié)果。然后我想看看我在客戶端多次(比如3次)請求后是每個都是10s返回響應(yīng),還是一共得30s以后才返回全部響應(yīng)。
在3次請求期間,我執(zhí)行php start.php status
導(dǎo)致結(jié)果立馬被返回了。
public function index(Request $request)
{
sleep(10);
return json(['code'=>0, 'msg'=>'OKKKKKKKKKKKKKKKKKKKKKKKKK']);
}
<video src="https://s3.keer.me/2024/10/6721d5e922a47.mp4"></video>
Workerman version:4.1.15 PHP version:8.2.14
start time:2024-10-29 17:08:09 run 0 days 21 hours
load average: 0.01, 0.09, 0.06 event-loop:\Workerman\Events\Select
2 workers 5 processes
不要使用exit die sleep語句
業(yè)務(wù)執(zhí)行exit die語句會導(dǎo)致進(jìn)程退出,并顯示W(wǎng)ORKER EXIT UNEXPECTED錯誤。當(dāng)然,進(jìn)程退出了會立刻重啟一個新的進(jìn)程繼續(xù)服務(wù)。如果需要返回,可以調(diào)用return。sleep語句會讓進(jìn)程睡眠,睡眠過程中不會執(zhí)行任何業(yè)務(wù),框架也會停止運(yùn)行,會導(dǎo)致該進(jìn)程的所有客戶端請求都無法處理。
http://www.wtbis.cn/doc/workerman/must-read.html
建議你還是多看看官方文檔
感謝大佬提醒。 exit和die這2個我剛學(xué)框架的時候也注意看了,sleep確實(shí)沒注意看到。 但這玩意確實(shí)10s后還是返回了,不太清楚具體邏輯。