エッジキャッシュの考え方
何を、どのくらい、いつ再検証するかを GitFlare はどう決めるか。
colo に届いた GET は、キャッシュに書く前に分類されます。メソッド、Cache-Control、バイパス規則、応答ステータスを見ます。200 / 301 / 302 / 404 / 410 が対象で、5xx は対象外です。
オリジンがキャッシュヘッダを送らない場合の既定 TTL は Free で 120 秒、Pro で 300 秒です。パスごとに上げられます。
エッジに意図を伝える
headers.set("Cache-Control", "public, max-age=300, stale-while-revalidate=60");
headers.set("CDN-Cache-Control", "max-age=86400");
待たずにパージ
$ gitflare cache purge --zone shop.example.com --prefix /assets/app.
リージョン内は数百ミリ秒、世界では数秒で収束します。切り替わりを厳密にしたい場合はファイル名にハッシュを含め、古いオブジェクトは TTL で消します。