Apache 2.2 的 MPM Event

這篇其實是在講 問題,不過我懶得寫長長一篇解釋了...

2.2 的 在測試後發現相當不錯,大力推薦 :D 不像 prefork 模式,一個連線就要一個 process。

再來因為 .htaccess 的彈性,配合 ,其實在量大的時候可以取代掉 。(量小的時候 lighttpd 還是很棒)

6 thoughts on “Apache 2.2 的 MPM Event”

  1. Will says:

    為什麼你說跟「其實在量大的時候可以取代掉 lighttpd。」

    為什麼有這種考量?

  2. Gea-Suan Lin says:

    量大的時候會把網站拆開,最基本的在於靜態檔案與動態檔案會分開。只有少數維護上的問題會放在一起。

    在這個情況下要跑 PHP 的 server 用 lighttpd 與用 Apache 2.2 MPM Event 其實是沒有差別的,因為吃記憶體的是 PHP,用 lighttpd 並不會省到哪裡,反而缺了 .htaccess 的支援,在很多時候會很麻煩。

    這是我說的「量大的時候」所著重的點。

  3. Will says:

    我還以為你說的是「一台 Server 的流量」,這個「量」實在有太多想像空間,可能是「流量」、「主機量」、「檔案量」、「人數」...etc.!

    我看大多數用 lighttpd 的網站都用在送出靜態檔案居多,應該也不需要 .htaccess 這東西進行設定。況且如果流量大的話,使用 .htaccess 也會拖慢一些速度,應該是在架構上做出規劃而非用 .htaccess 求方便吧!

    所以我個人認為「量小的時候」可以用 Apache 2.2,量大的時候再用 lighttpd 比較對。但如果兩者真的差不多,也沒必要用兩種 web server,應該用一種也就夠了吧,不過既然國外一些大型的網站都採用 lighttpd 應該有他的考量在,速度與資源使用率應該是主因。

  4. Buganini says:

    還要看用的程式語言吧
    PHP用Apache module跑是有額外的好處

    可是好些大站不是用PHP
    用Python什麼的 反正都要跑CGI

    另外"在架構上做出規劃"這點
    也許 是lighttpd比較好改?
    所以.htaccess之類的設定檔就不用寫了
    直接寫在code裡?

    也許apache的config loader也該來個JIT了...

  5. Gea-Suan Lin says:

    @Will:靜態檔案是一定會拆開的。我指的是本來用 lighttpd + FastCGI PHP 的部份可以用 Apache 2.2 做,這個部份就算在 production 上也沒問題,因為吃資源的是 PHP 不是 .htaccess。

    @Buganini:PHP 跑 Apache module 沒有什麼好處,而且現在沒人用 CGI mode 跑 production server,都是用 mod_fastcgi 掛上來。還有,仍然有一堆大站都是用 PHP。

Leave a Reply

Your email address will not be published. Required fields are marked *