diff --git a/deployment/cloudflare-cache-rules.md b/deployment/cloudflare-cache-rules.md new file mode 100644 index 0000000..f260f30 --- /dev/null +++ b/deployment/cloudflare-cache-rules.md @@ -0,0 +1,32 @@ +# Cloudflare Configuration + +To optimize performance, configure Cloudflare to offload traffic from your server. We use **Cache Rules** to cache responses while respecting the application's cache headers. + +## 1. Streams (Cache Rule) +Cache all stream results (public and private). Comet controls the TTL via headers. + +* **Rule Name**: Streams +* **Expression**: `(http.request.uri.path contains "/stream/")` +* **Action**: Eligible for Cache +* **Edge TTL**: Use cache-control header if present (first option) +* **Browser TTL**: Respect origin +* **Serve stale content while revalidating**: On + +## 2. Configure Page (Cache Rule) +Cache the configuration page. + +* **Rule Name**: Configure Page +* **Expression**: `(http.request.uri.path eq "/configure")` +* **Action**: Eligible for Cache +* **Edge TTL**: Use cache-control header if present (first option) +* **Browser TTL**: Respect origin + +## 3. Tiered Cache +Enable **Tiered Cache** in **Caching > Tiered Cache**. +This minimizes requests to your origin by checking other Cloudflare datacenters first. + +## 4. Network Optimizations +In **Speed > Protocol**: + +* **HTTP/3 (QUIC)**: On (faster connections, especially on mobile) +* **0-RTT Connection Resumption**: On (reduces latency for repeat visitors)