3種工作模式: prefork worker event
1.prefork:是一種進(jìn)程、與派生的工作模式,用的是進(jìn)程去處理請(qǐng)求,所以比較容易消耗內(nèi)存,但是穩(wěn)定性好,某個(gè)進(jìn)程出現(xiàn)問題不會(huì)影響到其他請(qǐng)求。要求穩(wěn)定的時(shí)候使用
2.worker:是使用多個(gè)子進(jìn)程、每個(gè)子進(jìn)程有多個(gè)線程、由于使用的是線程去處理請(qǐng)求,消耗內(nèi)存小,適合高流量的請(qǐng)求,但是如果某個(gè)進(jìn)程出現(xiàn)問題,那么這個(gè)進(jìn)程下的線程都會(huì)出現(xiàn)問題,即穩(wěn)定性不是很好。這種模式不能php要測(cè)試一下在訪問量多的時(shí)候使用 。
3.event模式:是為解決keep-alive保持長(zhǎng)連接出現(xiàn)的一種工作模式,使用keep-alive長(zhǎng)連接的時(shí)候,某個(gè)線程會(huì)一直被占用,即使中間沒有請(qǐng)求,需要等到超時(shí)才會(huì)被釋放,所以這個(gè)時(shí)候就出現(xiàn)了event的工作模式就出現(xiàn)了。
在event工作模式中,會(huì)有一些專門的線程用來管理這些keep-alive類型的線程,當(dāng)有真實(shí)請(qǐng)求過來的時(shí)候,將請(qǐng)求傳遞給服務(wù)器的線程,執(zhí)行完畢后,又允許它釋放。這增強(qiáng)了在高并發(fā)場(chǎng)景下的請(qǐng)求處理。另外,event模式是不支持用在https上的。