PHP 日本會議 2024

安裝

OPcache 只能編譯為共享擴充功能。如果您已使用 --disable-all 停用預設擴充功能的建置,則必須使用 --enable-opcache 選項編譯 PHP,OPcache 才能使用。

編譯完成後,您可以使用 zend_extension 組態指令將 OPcache 擴充功能載入 PHP。這可以在非 Windows 平台上使用 zend_extension=/full/path/to/opcache.so 完成,在 Windows 上使用 zend_extension=C:\path\to\php_opcache.dll 完成。

注意:

如果您想搭配 » Xdebug 使用 OPcache,您必須在 Xdebug 之前載入 OPcache。

建議的 php.ini 設定

以下設定通常建議為提供良好效能

opcache.memory_consumption=128
opcache.interned_strings_buffer=8
opcache.max_accelerated_files=4000
opcache.revalidate_freq=60
opcache.fast_shutdown=1 ; prior to PHP 7.2.0
opcache.enable_cli=1

您可能還想考慮停用 opcache.save_comments 並啟用 opcache.enable_file_override,但請注意,您必須在生產環境中使用這些設定之前測試您的程式碼,因為已知它們會破壞某些框架和應用程式,尤其是在使用文件註解的情況下。

在 Windows 上,應該啟用 opcache.file_cache_fallback,並且應該將 opcache.file_cache 設定為已存在且可寫入的目錄。

也提供 OPcache 支援的組態指令完整列表。

新增註解

使用者貢獻的註解 2 則註解

36
NoiseEee
10 年前
雖然 php.ini 的「建議」opcache 設定可能適合生產伺服器,但在您開發時,您會想要變更一些設定,否則您將看不到程式碼的任何變更。在盲目地將其貼到 php.ini 並假設一切都會運作良好之前,請熟悉它們的含義。
21
stchr
3 年前
請注意,opcache.fast_shutdown 已在 PHP 7.2 中移除
To Top