2020年5月初,碼農很忙進行了一次服務器遷移,除了 IP 地址變更之外,服務器系統也從 Windows Server 2019 降級為 Windows Server 2008 同時將 PHP 環境升級至 PHP 7.4.5 ,
在完成 IIS 的安裝后,將 PHP 7.4.5 nts 版本以 FastCGI 方式整合在 IIS 上,采用 php.ini-production 作為配置模板,以最小化組件依賴方式將 WordPress 運行了起來,在站點可以正常打開之后,對時區、最大運行時間和最大上傳資料大小等引數進行了調整,
最小化依賴配置下站點的運行速度并不理想:網站首頁的回應時間長達 600 毫秒,以當前服務器的配置,回應時間在 200 毫秒左右才算正常,
進入管理后臺的 “工具” 》 “站點健康”頁面后,發現站點健康狀態為:有待改進,提示包括 ImageMagick 在內的若干個擴展項沒有安裝,將擴展項逐一安裝完成后頁面提示健康狀態良好,但運行速度仍舊沒有改善,
在管理后臺添加 WP Super Cache 插件并啟用,在命中快取的情況下回應時間縮短至 40 毫秒左右,但在快取未命中的情況下,回應時間仍需 600 毫秒以上,
啟用 Autoptimize 插件,所有的前臺頁面被壓縮且 css 檔案被合并,但這也沒有對回應速度有太大的提升,
啟用 PHP 的 Opcache 擴展,網站速度有了很大幅度的提升:快取未命中的情況下,回應時間被縮短至 300 毫秒左右,
這個設定持續一段時間之后,偶然在 WordPress 插件串列中找到一款名為 Redis Object Cache 的插件,于是嘗試啟用了該插件,并安裝了 Redis 服務器和 php_redis 擴展,此時,網站性能再次提升:快取未命中的情況下,首頁的回應時間降低到接近 250 毫秒左右,
考慮到快取插件 WP Super Cache 和 Autoptimize 可能與 Redis Object Cache 有沖突或者額外的快取操作反而降低性能,于是嘗試禁用 WP Super Cache 和 Autoptimize 插件,之后,回應時間降低到 200 毫秒左右,于是將 WP Super Cache 和 Autoptimize 插件卸載,
至此,小站的優化告一段落,200 毫秒左右的回應時間算的上一個秒開的網站了,
總結一下
在 Windows 服務器上,PHP 也能表現出不錯的性能,即使在最小化依賴的配置下性能不盡人意,但在開啟了 Opcache 擴展后性能會有一個很大的提升,WP Super Cache 當然可以大幅度加快訪問速度,但前提是命中快取,Redis 是一款神器,有了他可以拋棄其他大多數快取插件了,在優化程序中要時刻牢記:并非優化插件越多速度越好,
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/40925.html
標籤:PHP
下一篇:php陣列的使用
