我一直認為PHP的運行速度是非常的理想的,尤其是Zend引擎的加速之後。但是PHP仍然有加速的可能,你知道嗎?
所有的一切都始於如何優化PHP的編譯
嘗試使用針對CPU型號的特殊編譯參數 -msse -mmmx -mfpmath=sse
在編譯的時候添加 -03參數
編譯的時候調節CPU的參數 -march -mcpu Use Caution
盡量只編譯你需要的模塊,避免無用的擴展加載
對於很少使用的擴展模塊,應該編譯成共享模式,便於在運行的時候動態加載
也許有些時候 --disable-all 會是你的好朋友
把PHP靜態編譯到apache可以提速20%
# PHP
./configure --with-apache=/path/to/apache_source
# apache
./configure --activate-module=src/modules/php4/libPHP4.a
優化你的PHP配置文件
確認你的 register_globals 配置為disabled
禁用 magic_quotes_* 選項
關閉 expose_PHP
關閉 register_argc_argv
除非絕對需要不要啟用 always_populate_raw_post_data
apache服務器的優化配置:
MaxSpareServers 使用高配置
MaxClIEnts 設置為你的服務器可以承受的2/5
MaxRequestsPerChild 理想情況是0 (不限),但是實際上都設置為一個較的一個值
優化文件訪問
DirectoryIndex 文件列表盡可能簡短
無論如何禁止 .htAccess 文件的 AllowOverride none
使用 FollowSymLinks 簡化文件訪問處理
避免使用 mod_rewrite 或者更復雜的操作
如果日志非必須的話就禁用
如果必須使用日志,那麼請記錄到一個文件中去,並且在分析過後清除
消除昂貴的系統呼叫
不要開啟 ExtendedStatus
在允許和禁止規則的時候使用IP而不要使用域名
不要啟用 HostnameLookups
保持 ServerSignature 關閉
設置 KeepAlive 為較小的一個值
動態和靜態的內容分離
提高硬盤性能參數
使用 output_buffering 優化PHP到apache的交互
增加apache的 SendBufferSize 大小
提高緩存執行
使用PHP代碼緩存機制
Turck MMCache 停止開發
APC 較慢,優化不夠
Zend Cache 優化性能好,但付費
ionCube PHP Accelerator 免費但不開源
如果可以使用Zlib壓縮
減少輸出數據
用CSS替換Html
壓縮Html頁面
使用Sessions管理
優化你的SQL指令