2017-09-15 5 views
2

App Engine met-il en cache les réponses côté serveur pour les requêtes dynamiques ou statiques si j'ai défini les en-têtes Cache-Control? La documentation ne semble pas éclaircir cela de toute façon https://cloud.google.com/appengine/docs/standard/php/how-requests-are-handledMise en cache de bord Google App Engine via le contrôle du cache?

J'ai une API qui répond à des réponses très cachables, donc ce serait bien de tirer profit de la mise en cache de bord.

Répondre

0

Vous pouvez définir le cache dans votre fichier app.yaml pour les fichiers statiques

- url: /static 
    static_dir: static 
    expiration: 10m 

Vous pouvez définir aa cache par défaut dans votre fichier app.yaml

application: my-app 
version: 1 
runtime: python27 
api_version: 1 
threadsafe: yes 
module: default 
default_expiration: "1h" 
instance_class: F2 

Pour la mise en cache des données JSON/réponse à partir de gestionnaires de demande, vous pouvez utiliser Memcache

+0

Merci pour votre réponse. Ce que je voudrais faire est d'ignorer complètement le traitement du serveur en mettant en cache la sortie de l'exécution en tant que ressource statique, comme vous le verriez avec quelque chose comme Varnish. En mettant en cache uniquement dans Memcache, je devrais toujours traiter mon script à chaque requête. –

+0

Eh bien avec App Engine, vous n'êtes pas autorisé à écrire sur le système de fichiers pour créer un fichier statique, donc je ne peux pas penser à un moyen de le faire via des fichiers statiques. Alors, combien essayez-vous de stocker? Peut-être que localStorage pourrait fonctionner. – bscott