2009-09-03 3 views
0

Nous avons une application Rails qui instancie un objet SWF 16 fois (il doit faire cela, c'est juste la nature de l'application). Au lieu d'être téléchargé une fois, il est téléchargé 16 fois.Comment s'assurer que le fichier SWF est mis en cache par le navigateur la première fois qu'il est téléchargé lors d'un service via HTTP et un cluster Mongrel?

Comment pouvons-nous nous assurer que ce fichier SWF est mis en cache par le navigateur la première fois qu'il est téléchargé? Il est servi directement à partir d'Apache - pouvons-nous modifier les en-têtes HTTP pour y parvenir?

Quelques informations:

  • Browser mise en cache des ressources avec le code 304.

  • points de domaine pour cluster et le trafic est transmis à deux serveurs (et .3 ) .4 dans le cluster.

  • Chaque serveur possède sa propre copie du code avec un horodatage différent des fichiers . S'il y a des demandes ultérieures au fichier SWF, il est probable que .3 ou .4 peut servir de serveur et le navigateur traite l'image comme modifiée sur le serveur puisque l'horodatage du fichier d'image est différent.

Toute aide serait appréciée, car elle améliorerait grandement les performances de l'application après la charge initiale.

Répondre

0

Essayez de définir l'en-tête Expires à une valeur suffisamment élevée. également en ajoutant Cache-Control: max_age=<some high number> aidera.

Les mod_expires d'Apache vous aideront dans tout cela.

Questions connexes