如何加速你的PHP程序

我一直認為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 文件的 AllowOverridenone

使用 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指令

發佈留言