首頁  >  文章  >  後端開發  >  如何配置php.ini,進行PHP效能調優?

如何配置php.ini,進行PHP效能調優?

青灯夜游
青灯夜游轉載
2022-04-08 09:18:155295瀏覽

如何進行PHP效能調優?以下這篇文章為大家介紹一些配置php.ini的方法,看看怎樣才是PHP效能最大優化?希望對大家有幫助!

如何配置php.ini,進行PHP效能調優?

用於生產環境中的PHP需要對其進行最佳化,讓PHP本身發揮更好的效能,除了寫好PHP程式碼,還要配置好php.ini 。下面我們就從記憶體、檔案上傳、會話緩衝輸出、真實路徑快取這幾個面向來講解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中文網其他相關文章!

陳述:
本文轉載於:微信公众号-PHP自学中心。如有侵權,請聯絡admin@php.cn刪除
上一篇:PHP的運作原理下一篇:PHP的運作原理