最佳Zend OpCache的設定調整與參數配置

正確使用Zend OpCache可以提高php的存取速度,優化PHP效能,啟用後如何設定Zend OpCache呢?接下來說一些需要調整的參數。

最佳Zend OpCache的設定調整與參數配置
您了解“.memory_consumption」的意思,但是誰知道該怎麼設定呢?設定32太多了嗎?還是太少了到底誰知道?搜尋引擎上什麼都沒有,所以就預設設定吧。預設設定無法開啟Zend OpCache的最佳快取效能。
正確使用Zend OpCache可以提高php的存取速度,優化PHP效能,啟用後如何設定Zend OpCache的最佳效能呢?接下來說一些需要調整的參數。
首先要說的是在哪裡修改設定Zend OpCache的設定參數,當然是你的php.ini檔案中。找到[OpCache],在[OpCache]容器下設定。
opcache.revalidate_freq:程式碼快取時間(以秒為單位)到期,並檢查程式碼是否已更改。 0表示它會在每個請求中檢查您的PHP程式碼(這會添加大量stat syscalls)。在您的開發環境中將其設為0。
opcache.validate_timestamps:啟用此選項後,PHP將根據您的opcache.revalidate_freq值檢查檔案時間戳記。如果停用該選項,opcache.revaliate_freq將會被忽略,而且不會檢查PHP檔案是否包含更新的程式碼。因此,如果您修改程式碼,修改將不會真正的生效,直到您重新啟動或重新載入PHP服務。在您的開發環境中對opcache.validate_timestamps進行註解。
opcache.max_accelerated_files:控制一次最多可以在記憶體中保留多少個PHP檔案。最重要的是,您的網站目錄PHP檔案比設定的內容少。例如網站目錄下的PHP文件大約有6000個文件,因此我將質數7963用於maxacceleratedfiles。
您可以運行以快速計算程式碼庫中的檔案數。進入你的網站目錄下,執行下面的命令。

find . -type f -print | grep php | wc -l

opcache.memory_consumption:預設值為64MB,將其設定為256MB,因為當你有很多程式碼的時候。您可以使用函數opcachegetstatus()來告知opcache正在消耗多少記憶體以及是否需要增加記憶體。
opcache.interned_strings_buffer:PHP使用一種稱為字串實習的技術來提高效能。例如:如果您在程式碼中使用字串"foobar"1000次,則PHP會在內部為該字串儲存1個不可變變量,而對另一個字串使用一個指標使用了999次。而不是為每個單一php-fpm進程都擁有這些不可變字串的池,此設定將其在所有php-fpm進程中共享。它可以節省記憶體並提高效能,尤其是在大型應用程式中。該值以兆位元組為單位設置,因此對於16MB,將其設置為“16”。預設值為4MB。

opcache.revalidate_freq=0 opcache.validate_timestamps=0 opcache.max_accelerated_files=7963 opcache.memory_consumption=256 opcache.interned_strings_buffer=16
1/5 - (1 vote)

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *