2012-07-19 11 views
5

Ich entwickle ein Backend-System für meine Anwendung in Google App Engine.Caching von JSON mit Cloudflare

Meine Anwendung und Backend-Server kommuniziert mit JSON. Wie http://server.example.com/api/check_status/3838373.json oder nur http://server.example.com/api/check_status/3838373/

Und ich plane, CloudFlare zum Zwischenspeichern von JSON-Seiten zu verwenden.

Welche sollte ich auf Header verwenden? :

Content-type: application/json 
Content-type: text/html 

Speichert CloudFlare die Antworten meines Servers, um meine Kosten zu reduzieren? Weil ich CSS, Bild usw. nicht verwenden werde

Antwort

11

Die standardmäßige Cloudflare-Cache-Ebene (unter den Leistungseinstellungen Ihrer Domain) ist auf Standard/Aggressiv gesetzt, dh es speichert nur bestimmte Typen standardmäßig scripts, stylesheets, images. Aggressives Caching speichert keine normalen Webseiten (zB an einem Verzeichnis oder * .html) und speichert JSON nicht zwischen. All dies basiert auf dem URL-Muster (z. B. endet es in .jpg?) Und unabhängig vom Header des Inhaltstyps.

Die globale Einstellung kann nur weniger aggressiv gemacht werden, nicht mehr, daher müssen Sie eine oder mehrere Seitenregeln einrichten, die diesen URLs entsprechen, indem Sie Cache Everything als benutzerdefinierte Cache-Regel verwenden.

http://blog.cloudflare.com/introducing-pagerules-advanced-caching

BTW würde ich nicht empfehlen für eine JSON-Antwort einen HTML-Content-Type verwenden.