私の場合だけども、cloudflare で。
❯ curl -sI https://android.benigumo.com/ | grep 'cf-cache'
cf-cache-status: BYPASS
どうやっても「HIT」にならない。
レスポンスヘッダーに set-cookie があると cloudflare のキャッシュが効かなくなるらしい。
Additionally, the following headers have given me grief with CF in the past, they should not be present:
Set-Cookie
👉 CF-CACHE-STATUS showing BYPASS - Website, Application, Performance - Cloudflare Community
確認すると、謎の cookie セットがある。
❯ curl -sI https://android.benigumo.com/
HTTP/2 200
date: Sun, 02 Feb 2025 06:42:13 GMT
content-type: text/html; charset=UTF-8
vary: Accept-Encoding
vary: accept, content-type
set-cookie: 6666cd76f96956469e7be39d750cc7d9=1738478533; expires=Sun, 02-Feb-2025 07:42:13 GMT; Max-Age=3600; path=/
web リソース内を grep して、
あやしそうなプラグインを特定後、無効化しながら確認する。
私の場合は、中華産プラグインでした。
削除後。
❯ curl -sI https://android.benigumo.com/ | grep 'cf-cache'
cf-cache-status: HIT
1秒あたり15リクエストしか返せなかったのが、
キャシュが効いて71リクエストを返せるようになりました!
❯ wrk https://android.benigumo.com
Running 10s test @ https://android.benigumo.com
2 threads and 10 connections
Thread Stats Avg Stdev Max +/- Stdev
Latency 201.93ms 252.04ms 1.57s 88.06%
Req/Sec 38.47 20.07 90.00 63.01%
713 requests in 10.03s, 68.66MB read
Socket errors: connect 0, read 0, write 0, timeout 1
Requests/sec: 71.06
Transfer/sec: 6.84MB
Cloudfrare プラグインは有料化への誘導なだけなので、
記事の更新や追加時のキャッシュのパージは手動で行います。