連結

節錄幾篇網誌與文章

顏開 http://www.yankay.com/

熱血漢誌 http://clonn.blogspot.com/ miicasa 前端工程師

gossip

php

apache prefork

arch

jquery

javascript

英文

php configure fast cgi

php 與 apache 最常協同工作的方式是採用在 apache 上掛載 mod_php 模組,在執行 apache 的時候呼叫這個模組來編譯 php 網頁。所以接收工作與回應的模式大都是 apache 在控制(這邊指的是行程的數量…與生命週期等等),預設情況 apache 會有一個 process pool 接到要求就從 pool 中叫一個起來工作,如果工作超過 pool 的 process 量的話則 fork 新 process 來處理,則會佔用大量的記憶體,尤其是 apache 是採用 process 不是 thread 的關係(一個 30M 200個 request 就需要 6G)。

common gateway interface 是一個讓網頁伺服器與程式銜接的介面,叫做 interface 就是代表各種語言只要實做了這個介面就能跟網頁伺服器溝通。而 fast cgi 則是 cgi 的擴展擁有許多更良好的特性,可以是一個不中斷程式持續的接收工作,而 apache 接到工作以後不是採用 php 模組的方式呼叫編譯,而是將要求轉送至已在運行的 fcgi 程式中。

透過 fast cgi 的方式運作與 spawn cgi 來管控數個設定如: php_cgi  行程的數量。透過管理 php_cgi 行程池,減低 apache 載入 php 模組所耗費的記憶體,應能加速 apache fork 行程的速度,因為少載入了一個肥大的 mod_php module。這樣的話假設實際環境使用者要求個網頁有 1個php 9個資源的情況,10個要求只有1個需要呼叫 php_cgi ,這樣 10 個 php_cgi 可以處理 100 個 apache process。

Continue reading…

CentOS 3rd party yum repos

Linux 的作業系統都會自己維護一套軟體套件,像 CentOS 是用 yum 來安裝,

所以這些自己上網確認更新的套件都是 CentOS 官方再維護的,這些軟體的伺服器資訊都在 /etc/yum.repos.d/ 下面

但是有些軟體比較新不想要自己 make 跟維護關聯性,可以採用第三方的 repos 來安裝,

例如 ius、EPEL、rpmforge 還蠻常見的,裡面有一些 php , python 新版的套件,可以裝。

安裝方式 http://wiki.iuscommunity.org/Doc/ClientUsageGuide,以 ius 為例

root@linuxbox ~]#
   wget http://dl.iuscommunity.org/pub/ius/stable/Redhat/5/i386/epel-release-5-4.noarch.rpm

root@linuxbox ~]#
   wget http://dl.iuscommunity.org/pub/ius/stable/Redhat/5/i386/ius-release-1.0-8.ius.el5.noarch.rpm

root@linuxbox ~]#
   rpm -Uvh ius-release*.rpm epel-release*.rpm

如果路徑錯了可以自己去 http://dl.iuscommunity.org/pub/ius/stable/Redhat/ 裡面找自己要得版本,然後安裝好就能更新一些新的套件例如 php5.2


$ yum install php52

ldap install and linux users

Name Service Switch 是 Linux 幫助查詢與統整各式資料的協定,例如帳號、群組、主機名稱~

PAM 則是帳號認證的模組,讓你可以動態的換掉認證的方式。

透過 Ldap 資料庫跟這兩個模組的合併,對伺服器帳號統整管理有很大的威力~

這文章主要在介紹大致上需要安裝的流程與相關設定檔,並簡介 ldap 相關概念。

Continue reading…