欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久

打開(kāi)APP
userphoto
未登錄

開(kāi)通VIP,暢享免費電子書(shū)等14項超值服

開(kāi)通VIP
Lighttpd與PHP

Lighttpd與PHP

Lighttpd和PHP的搭配現在越來(lái)越常見(jiàn)了。但是老實(shí)說(shuō),如非必要,我還是推薦你使用Apache和PHP的搭配方式,畢竟LAMP構架的成熟度和穩定度都是經(jīng)過(guò)時(shí)間考驗的。

那么什么時(shí)候Lighttpd和PHP的搭配更值得選擇呢?可以從以下幾點(diǎn)考慮:如果訪(fǎng)問(wèn)量比較大,硬件資源吃緊,那么Lighttpd適合你;如果和穩定相比,你傾向速度多一些,那么Lighttpd適合你。

題外話(huà):NginX大有趕超Lighttpd的態(tài)勢。

Lighttpd的安裝,本文就不多說(shuō)了,大家自己搜索一下就能找到大把大把的教程。這里我們著(zhù)重討論一下Lighttpd的配置。

安裝好Lighttpd+PHP后,你的配置很可能是類(lèi)似下面的代碼:

fastcgi.server = ( ".php" =>
    (( "socket" => "/tmp/php-fastcgi.socket",
        "bin-path" => "/usr/bin/php-cgi",
        "max-procs" => 10,
        "bin-environment" => (
            "PHP_FCGI_CHILDREN" => "16",
            "PHP_FCGI_MAX_REQUESTS" => "1000"
        ),
        "broken-scriptfilename" => "enable"
    ))
)


其中,PHP_FCGI_MAX_REQUESTS的作用是在一個(gè)子進(jìn)程工作一定次數后就干掉它,以免可能出現的問(wèn)題連累系統,主進(jìn)程會(huì )再創(chuàng )建一個(gè)相應的子進(jìn)程來(lái)替補,保證子進(jìn)程數一直是PHP_FCGI_CHILDREN個(gè)。

另外還有兩個(gè)設置選項至關(guān)重要,分別是max-procs和PHP_FCGI_CHILDREN。如上所示的配置,系統將創(chuàng )建170個(gè)PHP-cgi的進(jìn)程,它的計算公式如下:

num-procs = max-procs * ( 1 + PHP_FCGI_CHILDREN )

如果一個(gè)php-cgi進(jìn)程占用十幾兆內存的話(huà),那么總計大約就要占用2G左右的內存。

我們先來(lái)看看max-procs的意思:從字面意思看,它似乎指得是最大進(jìn)程數。實(shí)際它指的是Lighttpd一開(kāi)始spawn多少個(gè)進(jìn)程。

至于PHP_FCGI_CHILDREN的意思,和字面意思相同,指的就是每個(gè)主進(jìn)程里產(chǎn)生多少個(gè)PHPFCGI子進(jìn)程。

如果你的Lighttpd已經(jīng)啟動(dòng),你可以嘗試執行一下命令:ps aux | grep php-cgi,將會(huì )看到大量的php-cgi進(jìn)程:

nobody 10939 0.0 0.1 15556 4820 ? Ss 16:24 0:00 /usr/local/bin/php-cgi
nobody 11380 0.0 0.1 15452 5588 ? S 16:24 0:00 /usr/local/bin/php-cgi


仔細觀(guān)察,你會(huì )發(fā)現這些php-cgi的狀態(tài)不盡相同,有的是Ss,有的是S,通過(guò)man ps你能找到這些狀態(tài)的含義:

S Interruptible sleep (waiting for an event to complete)
s is a session leader


也就是說(shuō),Ss狀態(tài)的進(jìn)程都是主進(jìn)程(max-procs代表的那些進(jìn)程),而S狀態(tài)的進(jìn)程都是子進(jìn)程(PHP_FCGI_CHILDREN代表的那些進(jìn)程)。如果不相信,你可以使用命令核實(shí)一下數量:

ps aux | grep php-cgi | grep Ss | grep -v grep | wc -l

確認了這些,我們再仔細看ps aux | grep php-cgi的結果,你還會(huì )發(fā)現主進(jìn)程的內存占用(4840)和子進(jìn)程的內存占用(5588)是不同的。這是因為主進(jìn)程不處理實(shí)際的PHP請求,它唯一的工作就是看管好自己手下的子進(jìn)程。而實(shí)際的PHP請求都是由子進(jìn)程來(lái)完成的,所以子進(jìn)程占用的內存要稍大一些。

如此,我們對max-procs和PHP_FCGI_CHILDREN的含義應該理解了吧,別急,還有一個(gè)問(wèn)題:既然php-cgi的總進(jìn)程數可以由上面的公式算出來(lái),那么以下幾個(gè)配置選項哪個(gè)好?

"max-procs" => 1,
"PHP_FCGI_CHILDREN" => "169",

"max-procs" => 2,
"PHP_FCGI_CHILDREN" => "84",

"max-procs" => 10,
"PHP_FCGI_CHILDREN" => "16",


以上三種配置產(chǎn)生的總進(jìn)程數一樣(都是170),我們如何判斷配置的好壞呢?

如果使用了eAccelerator之類(lèi)的PHP優(yōu)化器,那么eAccelerator會(huì )為每一個(gè)主進(jìn)程創(chuàng )建一個(gè)獨立的緩存空間,這個(gè)時(shí)候如果你的max-procs是2的話(huà),就會(huì )建立兩個(gè)獨立的緩存空間。一方面這浪費了一些內存,另一方面如果你的一個(gè)主進(jìn)程掛了(它下面的子進(jìn)程就失控了),至少你還有一個(gè)主進(jìn)程可以保持正常運轉。

總體來(lái)說(shuō),max-procs不宜為較小,否則沒(méi)有容錯性,在有PHP優(yōu)化器的時(shí)候也不宜過(guò)大,否則會(huì )浪費很多內存做緩存空間,即便沒(méi)有裝PHP優(yōu)化器,max-procs也不宜過(guò)大,因為主進(jìn)程是不處理PHP請求的,過(guò)多的主進(jìn)程自然就是一種浪費。確定了max-procs的值,剩下PHP_FCGI_CHILDREN的值就好說(shuō)了。

另外:通過(guò)命令netstat -anp | grep php-cgi | wc -l可以得知當前有多少php-cgi處于連接狀態(tài),如果接近php-cgi的總進(jìn)程數,就說(shuō)明應該加大進(jìn)程數了。

補充:
  1. Add cgi.fix_pathinfo = 1 in your php.ini
  2. Add "broken-scriptfilename" => "enable" into lighttpd.conf at fastcgi.server section.

    ---------------------------------------------

    參考連接:

    http://trac.lighttpd.net/trac/wiki/Docs%3AModFastCGI
    http://trac.lighttpd.net/trac/wiki/FrequentlyAskedQuestions
本站僅提供存儲服務(wù),所有內容均由用戶(hù)發(fā)布,如發(fā)現有害或侵權內容,請點(diǎn)擊舉報。
打開(kāi)APP,閱讀全文并永久保存 查看更多類(lèi)似文章
猜你喜歡
類(lèi)似文章
php5.4.5移植到arm
php在apache中運行模式
我所了解的cgi
基于php在各種web服務(wù)器的運行模式詳解
php-fcgi進(jìn)程數超過(guò)預設值問(wèn)題的解決
Lighttpd 的安裝配置
更多類(lèi)似文章 >>
生活服務(wù)
分享 收藏 導長(cháng)圖 關(guān)注 下載文章
綁定賬號成功
后續可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服

欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久