分享:
x0
|
[PHP][討論] 分享] 如何加速你的PHP程序
如何加速你的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指令
|