成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專(zhuān)欄INFORMATION COLUMN

淺談PHP-FPM參數(shù)

array_huang / 3219人閱讀

摘要:英文解釋中文翻譯設(shè)置子進(jìn)程接受主進(jìn)程復(fù)用信號(hào)的超時(shí)時(shí)間。默認(rèn)值為,表示該選項(xiàng)為關(guān)閉狀態(tài)。唯一的解決方法是關(guān)閉安全模式或者在中修改時(shí)間限制。

process_control_timeout

英文解釋

process_control_timeout
?mixed
Time limit for child processes to wait for a reaction on signals from master. Available units: s(econds), m(inutes), h(ours), or d(ays) Default Unit: seconds. Default value: 0.

中文翻譯

process_control_timeout
?mixed
設(shè)置子進(jìn)程接受主進(jìn)程復(fù)用信號(hào)的超時(shí)時(shí)間。可用單位:s(秒),m(分),h(小時(shí))或者 d(天)。默認(rèn)單位:s(秒)。默認(rèn)值:0(關(guān)閉)。

中文翻譯有個(gè)不恰當(dāng)?shù)牡胤?,英文解釋里并沒(méi)有指明該信號(hào)是復(fù)用信號(hào)。

我的理解:

處理請(qǐng)求

原則上,php-fpm會(huì)選擇空閑的fastcgi進(jìn)程去處理請(qǐng)求,在處理之前,php-fpm會(huì)給fastcgi發(fā)送信號(hào),用來(lái)讓fastcgi進(jìn)程準(zhǔn)備好接受請(qǐng)求處理。但是fastcgi進(jìn)程并不總是能夠處理請(qǐng)求,也就是不能總是響應(yīng)該信號(hào)(比如出現(xiàn)假死的情況),這時(shí)候就需要設(shè)定php-fpm留給fastcgi進(jìn)程響應(yīng)信號(hào)的時(shí)間,如果超時(shí)了,php-fpm會(huì)想其他辦法(例如選擇其他fastcgi進(jìn)程),這個(gè)就是process_control_timeout參數(shù)的作用

php-fpm進(jìn)行reload

process_control_timeout = 10

http://localhost

當(dāng)瀏覽器訪問(wèn)http://localhost時(shí),進(jìn)行php-fpm平滑reload,fastcgi信號(hào)收到關(guān)閉進(jìn)程信號(hào)后,第一個(gè)sleep函數(shù)會(huì)直接返回,但是第二個(gè)sleep仍在執(zhí)行。因此,php-fpm會(huì)被這一個(gè)舊fastcgi進(jìn)程卡10s,超過(guò)后才能完成平滑重啟


request_terminate_timeout

在php-fpm.conf文件中的描述如下:

; The timeout for serving a single request after which the worker process will
; be killed. This option should be used when the "max_execution_time" ini option
; does not stop script execution for some reason. A value of "0" means "off".
; Available units: s(econds)(default), m(inutes), h(ours), or d(ays)
; Default Value: 0
;request_terminate_timeout = 0

翻譯過(guò)來(lái)就是:
request_terminate_timeout參數(shù)設(shè)置了處理單個(gè)請(qǐng)求的超時(shí)時(shí)間,過(guò)了之后,該worker進(jìn)程就會(huì)被kill掉。這個(gè)選項(xiàng)應(yīng)該在php.ini文件的max_execution_time選項(xiàng)由于某種原因沒(méi)有停止腳本的運(yùn)行下使用。默認(rèn)值為0,表示該選項(xiàng)為關(guān)閉狀態(tài)。

正如上面所說(shuō),request_terminate_timeout設(shè)定的是請(qǐng)求的超時(shí)時(shí)間,而php.ini配置中的max_execution_time根據(jù)手冊(cè)如下的解釋?zhuān)?strong>腳本被允許的最大執(zhí)行時(shí)間。

max_execution_time
?integer
這設(shè)置了腳本被解析器中止之前允許的最大執(zhí)行時(shí)間,單位秒。 這有助于防止寫(xiě)得不好的腳本占盡服務(wù)器資源。 默認(rèn)設(shè)置為?30。 從命令行運(yùn)行 PHP 時(shí),默認(rèn)設(shè)置為?0
最大執(zhí)行時(shí)間不會(huì)影響系統(tǒng)調(diào)用和系統(tǒng)操作等。更多細(xì)節(jié)參見(jiàn)?set_time_limit()。
在?安全模式?下你不能通過(guò)?ini_set()?來(lái)修改此設(shè)置。 唯一的解決方法是關(guān)閉安全模式或者在?php.ini中修改時(shí)間限制。
你的 web 服務(wù)器也可以有其他超時(shí)設(shè)置,也有可能中斷 PHP 的執(zhí)行。 Apache 有一個(gè)?Timeout?指令,IIS 有一個(gè) CGI 超時(shí)功能。 他們默認(rèn)都是 300 秒。更多具體信息參見(jiàn)你的 web 服務(wù)器的文檔。

區(qū)別如下:

超時(shí)后,request_terminate_timeout會(huì)返回502Bad Gateway了,而max_execution_time會(huì)拋出Fatal Error。

max_execution_time不包括諸如使用system(),sleep()的系統(tǒng)調(diào)用、流操作、數(shù)據(jù)庫(kù)操作等的時(shí)間,所以比較雞肋,而request_terminate_timeout會(huì)包含程序的完整請(qǐng)求時(shí)間。

另外,開(kāi)啟request_terminate_timeout并不會(huì)讓max_execution_time失效,先到達(dá)誰(shuí)的超時(shí)時(shí)間誰(shuí)起作用。

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/28379.html

相關(guān)文章

  • 個(gè)人整理, 閱讀過(guò)的好文章 (每天隨時(shí)更新)

    摘要:大家有好的文章可以在評(píng)論下面分享出來(lái)共同進(jìn)步本文鏈接數(shù)組使用之道程序員進(jìn)階學(xué)習(xí)書(shū)籍參考指南教你在不使用框架的情況下也能寫(xiě)出現(xiàn)代化代碼巧用數(shù)組函數(shù)框架中間件實(shí)現(xiàn)沒(méi)錯(cuò),這就是面向?qū)ο缶幊淘O(shè)計(jì)模式需要遵循的個(gè)基本原則令人困惑的在中使用協(xié)程實(shí)現(xiàn)多任 大家有好的文章,可以在評(píng)論下面分享出來(lái), 共同進(jìn)步! 本文github鏈接 php PHP 數(shù)組使用之道 PHP程序員進(jìn)階學(xué)習(xí)書(shū)籍參考指南 教你...

    Chiclaim 評(píng)論0 收藏0
  • 解決CentOS 7中php-fpm進(jìn)程數(shù)過(guò)多導(dǎo)致服務(wù)器內(nèi)存資源消耗較大的問(wèn)題

    摘要:前言最近服務(wù)器內(nèi)存使用率一直居高不下,檢查之后發(fā)現(xiàn)可能和進(jìn)程數(shù)過(guò)多有關(guān)。什么是即進(jìn)程管理器,用于控制的內(nèi)存和進(jìn)程等。動(dòng)態(tài)方式下的最大進(jìn)程數(shù)量。 前言: 最近服務(wù)器內(nèi)存使用率一直居高不下,檢查之后發(fā)現(xiàn)可能和php-fpm進(jìn)程數(shù)過(guò)多有關(guān)。本文記錄了我優(yōu)化php-fpm配置文件的過(guò)程并補(bǔ)充了一些和php-fpm有關(guān)的知識(shí)。 什么是php-fpm: php-fpm即FastCGI進(jìn)程管理器,用...

    leejan97 評(píng)論0 收藏0
  • php7+的php-fpm參數(shù)配置,注意事項(xiàng)

    摘要:安裝的,如果的這幾個(gè)參數(shù)設(shè)置不當(dāng)了,會(huì)導(dǎo)致啟動(dòng)不了,站點(diǎn)不能解析文件,報(bào)錯(cuò)誤。 安裝php7+的,如果php-fpm的這幾個(gè)參數(shù)設(shè)置不當(dāng)了,會(huì)導(dǎo)致php-fpm啟動(dòng)不了,nginx站點(diǎn)不能解析php文件,報(bào)404錯(cuò)誤。 相關(guān)命令:centos7+,啟動(dòng)php-fpm: systemctl start php-fpm 查看php-fpm是否啟動(dòng): ps -ef|grep php ph...

    zhangrxiang 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<