47 votes

Vernis hit-de-passe signifie?

Je suis nouveau sur le vernis. Je suis à l'aide de vernis 3* * * de version. Que du Vernis a certains objets pour les différentes opérations. Comme, pass est utilisé quand il sera a récupérer des données à partir du backend. et cela a frappé quand il demande un contenu dans le cache. Mais je ne peux pas comprendre l'utilisation de hit-pour-passer. lorsque vernis utilise ? Je n'ai pas trouvé toutes les informations utiles sur le net qui peut clair pour moi.

161voto

lkarsten Points 1615

Un hit_for_pass objet est fait pour optimiser l'extraction de la procédure à l'encontre d'un serveur d'arrière-plan.

Pour le commun des défauts de cache, Vernis mettra en file d'attente tous les clients qui demandent le même objet cache et envoyer une seule demande pour le backend. C'est généralement plus rapide, laissez-le backend de travail sur une seule requête au lieu d'inonder avec des n requêtes en même temps.

Rappelez-vous que certains serveurs utilisent beaucoup de temps à la préparation d'un objet de 10 secondes n'est pas rare. Si c'est le front de la page HTML et vous avez 3000 req/s contre elle, en envoyant simplement un backend demande fait beaucoup de sens.

La question se pose quand, après les Vernis a récupéré l'objet voit qu'il ne peut pas être mis en cache. Les raisons pour cela est que le backend envoie "Cache-Control: max-age=0, ou (plus souvent) une-tête Set-Cookie. Dans ce cas, vous avez quelque part entre 3000 et 30 000 clients (3k req/s * 10sec) assis inactif dans la file d'attente, et pour chacun de ces clients de la même façon lente de l'un-à-la-fois backend demande doit remplir pour les servir. Cela va ruiner votre temps de réponse du site.

Donc, Vernis enregistre la décision que cette demande ne peut pas être mis en cache par la création d'un hit_for_pass objet.

Sur la demande suivante pour la même URL, la recherche dans le cache sera de retour d'une hit_for_pass objet. Ce que les signaux de plusieurs extractions peut être fait en même temps. Votre backend peut-être pas trop heureux à ce sujet, mais au moins, le Vernis n'est pas de files d'attente des clients pour aucune raison.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X