Question

Je aime vraiment nginx.

Mais récemment, je l'ai trouvé que le vernis vous donne l'occasion de mettre en œuvre la mise en cache intelligente Revers couche proxy (avec purge d'URL). J'ai un groupe de bâtards qui sont assez si gourmandes en ressources si cette couche de mise en cache peut enlever une certaine charge de roquets cela peut être une bonne chose.

Je n'ai pas trouvé un moyen de mettre en œuvre la couche de mise en cache (avec des pages d'application, le contenu statique est cacheable bien sûr) même avec nginx ..

Dois-je utiliser à la place Varnish? Que recommanderiez-vous?

Était-ce utile?

La solution

Je ne sais pas ce que vous entendez dans « intelligent », mais de toute façon Nginx a la mise en cache à partir de 0,7 branche. Il y a beaucoup de paramètres à régler, par exemple.

  • vous pouvez avoir plusieurs TTLs pour différents codes de retour,
  • capacité
  • pour revenir contenu périmé lorsque l'application ne répond pas
  • de limiter la taille totale du cache sur le disque
  • vous pouvez définir les éléments d'information seront utilisés pour générer une clé de cache.

La documentation est ici

Autres conseils

Nginx a quelques fonctionnalités si vous avez juste besoin de la mise en cache très basique, mais Varnish vous permet de faire des purges actifs par URL ou mise en correspondance d'en-tête, côté bord comprend donc les différentes parties de vos pages peuvent avoir différentes TTLS, et beaucoup d'autres supercherie parce qu'il a un langage de configuration très flexible.

Si vous voulez vraiment sérieusement cache et réduire la charge sur vos backends, je partirais avec vernis, mais il va être beaucoup plus difficile à mettre en place que le simple ajout de quelques directives à votre nginx.conf.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top