瞭解 OPcache 擴充

曾是然發表於2019-04-26

它是由 PHP 官方公司 Zend 開發的一款免費使用的 PHP 最佳化加速擴充。將 PHP Code 預編譯生成的指令碼檔案 OPcode 快取在共享記憶體中供以後反覆使用,從而避免了從磁碟讀取程式碼再次編譯的時間消耗。同時,它還應用了一些程式碼最佳化模式,使得程式碼執行更快。從而加速 PHP 應用響應。

正常 PHP Code 生命週期

瞭解 OPcache 擴充

每次處理一個請求,PHP 指令碼都會執行一遍上面的步驟,如果 PHP Code 沒有變化,那麼 OPcode 也不會有變化。顯然沒必要每次都重新生成 OPcode,結合在 Web 中非常常見的快取機制,我們也可以把 OPcode 快取下來,直接透過快取訪問 OPcode,想想都美滋滋。

啟用 OPcache 之後的生命週期

瞭解 OPcache 擴充

避免重複編譯,減少 CPU 和記憶體的開銷。

OPcache 在 PHP 5.5 以後預設安裝,需要我們手動開啟與相關配置。

相關配置可參考:

推薦一款輕量級的壓測工具 wrk

wrk 是一款針對 Http 協議的基準測試工具,它能夠在單機多核 CPU 的條件下,使用系統自帶的高效能 I/O 機制,如 epoll,kqueue 等,透過多執行緒和事件模式,對目標機器產生大量的負載。

  • 輕量級效能測試工具
  • 安裝非常簡單
  • 幾分鐘就能學會基本使用
  • 高效能 I/O 機制
安裝
git clone https://github.com/wg/wrk.git

cd wrk

make

sudo cp wrk /usr/local/bin

wrk -v

...
...
基礎使用
wrk -t12 -c400 -d10s http://your.app.domain

使用 12 個執行緒執行 10 秒,400 個 Http 併發。

更多使用方法可深入瞭解。

本作品採用《CC 協議》,轉載必須註明作者和本文連結
Hello。

相關文章