做爲流行的 Web 編程語言, PHP 的最大優點就是速度。 PHP已經在這方面作的很是好了,你幾乎找不到比它更快的腳本編程語言了。可是若是你的應用負荷很大,而帶寬又比較小,或者有其餘的瓶頸影響你的服務器性能,那麼,你不妨試試筆者爲你開出的幾個藥方,看看是否靈驗。php
1、代碼優化程序員
一談到代碼優化,或許你想到的就是整齊明瞭的代碼,可是本文的意思卻不是在此,由於若是要尋求速度的話,就要對PHP 源碼做相應的調整。通常說來就是去掉多餘的註釋,讓代碼不可讀。可是這對於一個具備良好素養的程序員來講,簡直就是難以想象的。好在Zend Technologies 公司發佈了Zend 優化引擎能夠幫助你作到這一點。它如今是免費的,可是你必須遵循 Zend Optimizer 許可。這個產品能夠對引擎產生的中間代碼進行優化。編程
安裝這個引擎比較簡單,下載對應平臺的版本之後,解開壓縮文件,而後在 php.ini 文件裏面加上下面兩行,從新啓動 Web 服務器,就搞定了。服務器
zend_optimizer.optimization_level=15 zend_extension="/path/to/ZendOptimizer.so" zend_loader.enable=Off |
若是是 Win32 平臺的應該是:編程語言
zend_optimizer.optimization_level=15 zend_extension_ts="C:\\path\\to\\ZendOptimizer.dll" zend_loader.enable=Off |
其實第三行是可選的。由於看起來把 zend_loader 關掉能提升一點速度,所以值得把這第三行放到 php.ini 。須要注意的是,關掉的前提條件是你沒有在使用 Zend 加密程序。ide
2、緩衝性能
若是想要更進一步提高速度,咱們就須要考慮採用緩衝技術了。有一些可選的解決方案,包括 Zend Cache (測試版本), APC, 以及 Afterburner Cache,另外還有 jpCache 等。測試
以上這些都是屬於緩衝模塊,他們把第一次對 .php 文件請求產生的中間代碼存儲在 Web 服務器的內存中,而後對之後的請求返回「編譯好」的版本。由於這樣減小了磁盤讀寫,並且都在內存工做,因此這個過程能顯著提高應用性能,優化
現成的這類產品比較多,到底選擇誰呢?加密
◆Zend Cache 是一款不錯的商業產品,在第一次加載那些很大的 PHP 頁面後,你會明顯感覺到速度的提高,服務器會留出更多的資源。惋惜這個產品是要花銀子的,可是在有些情形下,你可不要吝嗇這些銀子。
◆Afterburner Cache 是 Bware Technologies 的產品,目前還處於 Beta 版本,看起來彷佛和 Zend Cashe 同樣,可是它不能達到 Zend Cache 那樣好的效果,也不能和 Zend 優化引擎一塊兒工做,可是它是免費的,因此我採用了這個模塊。
◆APC (Alternative PHP Cache) 是 Community Connect 發佈的又一個免費模塊,看起來彷佛能夠用於生產環境了。