1.fastCGI

fastcgi是一個協議
php-fpm實現這個協議、管理fastcgi

確認運行

ss -pl | grep php

減少 TTFB (伺服器回應時間) nginx redis

 

2. Redis Object Cache

Redis Object Cache 可提升 WordPress 的效能,
透過將查詢結果快取在記憶體中,

加速讀取與降低資料庫負載。

sudo systemctl status redis

減少 TTFB (伺服器回應時間) nginx redis

 

 

3.MariaDB Query Cache

MariaDB Query Cache 設定 路徑:

/etc/mysql/mariadb.conf.d/50-server.cnf

減少 TTFB (伺服器回應時間) nginx redis

重啟MariaDB

sudo systemctl restart mariadb

 

4.gzip or Brotli

 

Brotli 與 gzip 進行基準測試時,發現它可以更好地壓縮檔案:

  • JavaScript 檔案小 14%
  • HTML 檔案小 21%
  • CSS 檔案小 17%

由於Brotli被設計為動態壓縮流,
因此它在伺服器上壓縮內容和 在瀏覽器中解壓縮內容比 gzip 更快。
在某些情況下,整體前端解壓縮速度比 gzip 快 64%。

 

取得模組

echo "deb http://nginx.org/packages/ubuntu $(lsb_release -cs) nginx" | sudo tee /etc/apt/sources.list.d/nginx.list
echo "deb-src http://nginx.org/packages/ubuntu $(lsb_release -cs) nginx" | sudo tee -a /etc/apt/sources.list.d/nginx.list
curl -fsSL https://nginx.org/keys/nginx_signing.key | sudo apt-key add -
sudo apt update

安裝

sudo apt install nginx-module-brotli
 

nginx.conf配置

brotli on; brotli_comp_level 6;

brotli_types text/plain text/css application/json application/javascript text/xml application/xml+rss text/javascript;

 

測試、重啟

sudo nginx -t
sudo systemctl restart nginx

 

gzip:

nginx conf裡配置給足

  • gzip on; → 啟用 Gzip
  • gzip_types → 壓縮常見的 CSS、JS、JSON、XML、HTML
  • gzip_comp_level 6; → 設定壓縮等級(1-9,6 為平衡速度與壓縮率)
  • gzip_min_length 256; → 只壓縮超過 256 bytes 的檔案
  • gzip_vary on; → 讓 Vary: Accept-Encoding 頭資訊可用
  • gzip_proxied any; → 允許 Proxy 伺服器壓縮內容

 

gzip on;
gzip_types text/plain text/css application/json application/javascript text/xml application/xml application/xml+rss text/javascript;
gzip_vary on;
gzip_comp_level 6;
gzip_min_length 256;
gzip_proxied any;
gzip_buffers 16 8k;

減少 TTFB (伺服器回應時間) nginx redis

dev tool network確認啟用

減少 TTFB (伺服器回應時間) nginx redis

 

排查是server端的問題還是程式端

curl -o /dev/null -s -w '%{time_starttransfer}\n' {你的資源 url}

例如單一照片得到的值0.1xxx 

響應100毫秒但 google speedinsight同張照片卻報最大內容繪製元素 6,180 毫秒
那就知道server設定大致沒問題

可以往程式端js、css卡時間優化

 

 

 

 

 

 

 

 

 

 

arrow
arrow
    全站熱搜
    創作者介紹
    創作者 MonkeyJ 的頭像
    MonkeyJ

    程式猴

    MonkeyJ 發表在 痞客邦 留言(0) 人氣()