淺談PHP性能優化之php.ini配置
內存
默認設置
memory_limit = 128M
單個進程可使用的內存最大值,這個值的設定可以從以下幾點考慮:
- 應用的類型。如果是內存集中型應用,可增加該值;
- 單個 PHP 進程平均消耗的內存,該值可通過多次運行同一個腳本來計算平均值;
- 能負擔多少個 php-fpm 進程;該值等於分配的總內存除以單個 PHP 進程平均消耗的內存;
文件上傳
默認設置
file_uploads = On
max_file_uploads = 20
upload_max_filesize = 2M
max_execution_time = 30 值 為 0 代表沒有限制
- 設置max_file_uploads來決定同時允許多少個文件上傳;
- 設置upload_max_filesize來決定每個文件上傳的最大值;
- 如果是長時間任務,盡量使用隊列來處理,因此,可適當縮短max_execution_time的值;
註意, Web 服務器也可以設置文件上傳大小及超時時間,不能僅僅以 php.ini 的設置為準;
會話
PHP 的會話默認是保存在硬盤中
session.save_handler = files
在實際應用中,應當將會話保存在內存中。可使用 Memcached 或者 Redis。這樣做主要有兩個好處:
- 提高速度;
- 有助於後期的擴展,如果會話數據存儲在硬盤中,不便於增加額外的服務器,如果把會話數據存放在 Memcached 或 Redis 裡,任何一臺分佈式 PHP-FPM 服務器都能訪問會話數據。
可通過 PECL 安裝memcached擴展並設置默認的save_handler為memcached
session.save_handler = ‘memcached’
session.save_path = ‘127.0.0.1:11211’
緩沖輸出
默認值
output_buffering = 4096
在較少的片段中把內容傳遞給訪問者的瀏覽器,能減少 HTTP 請求總數。 因此,我們要讓 PHP 緩沖輸出,默認情況下,PHP 已經啟用瞭輸出緩沖功能,PHP 緩沖 4096 字節的輸出之後才會把內容發送給 Web 服務器。
註:如果想要修改輸出緩沖區的大小,確保使用的值是 4(32 位系統)或 8(64 位系統)的倍數。
真實路徑緩存
默認值
realpath_cache_size = 4M
realpath_cache_ttl = 120
PHP 會緩存應用使用的文件路徑,這樣每次包含或導入文件時就無需不斷搜索包含路徑瞭,這個緩存叫真實路徑緩存(realpath cache),如果運行的是大型的 PHP 文件(如 Composer 組件),使用瞭大量文件,增加 PHP 真實路徑緩存的大小能得到更好的性能。
以上就是淺談PHP性能優化之php.ini配置的詳細內容,更多關於PHP性能優化之php.ini配置的資料請關註WalkonNet其它相關文章!
推薦閱讀:
- PHP細數實現提高並發能力的方法
- PHP之修改php.ini文件上傳大小的配置問題案例講解
- PHP引擎php.ini參數優化深入講解
- php之php.ini配置文件講解案例
- php memcached的實例用法詳解