php一般開多少個(gè)進(jìn)程 探討nginx與php-fpm是不是以多進(jìn)程多線程方式運(yùn)行的?
探討nginx與php-fpm是不是以多進(jìn)程多線程方式運(yùn)行的?這個(gè)問題比較初級(jí),公文中的信息也很完整。Nginx是一個(gè)非阻塞IO&IO重用模型,它可以通過操作系統(tǒng)提供的類似epoll的函數(shù)在一個(gè)線程中
探討nginx與php-fpm是不是以多進(jìn)程多線程方式運(yùn)行的?
這個(gè)問題比較初級(jí),公文中的信息也很完整。Nginx是一個(gè)非阻塞IO&IO重用模型,它可以通過操作系統(tǒng)提供的類似epoll的函數(shù)在一個(gè)線程中處理來自多個(gè)客戶端的請(qǐng)求。nginx的進(jìn)程是一個(gè)線程,即每個(gè)進(jìn)程只有一個(gè)線程,但是這個(gè)線程可以服務(wù)于多個(gè)客戶端。Php fpm是一個(gè)阻塞的單線程模型,pm.max子進(jìn)程指定最大進(jìn)程數(shù),pm.maxRequests指定每個(gè)進(jìn)程可以處理多少個(gè)請(qǐng)求,然后重新啟動(dòng)(因?yàn)镻HP偶爾會(huì)有內(nèi)存泄漏,所以需要重新啟動(dòng))。php-fpm的每個(gè)進(jìn)程只有一個(gè)線程,但一個(gè)進(jìn)程只能同時(shí)服務(wù)于一個(gè)客戶機(jī)。大多數(shù)Linux程序傾向于使用進(jìn)程而不是線程,因?yàn)樵贚inux下創(chuàng)建進(jìn)程的成本相對(duì)較小,而且Linux的線程功能也不是很強(qiáng)大。你可以去備份平臺(tái)看看。里面的東西很好