Quelle est la différence entre cache IIS (dynamique et statique), OutPutCache et cache de navigateur?

Quelle est la différence entre IIS (Dynamic and Static) cache, OutPutCache et browser cache ?

je crois que je les confonds.

est-ce que le navigateur cache tous les fichiers js ou css?

que se passe-t-il si j'utilise IIS cache et n'utilise pas OutputCache ?

que se passe-t-il si j'utilise les deux?

7
demandé sur Arian 2012-03-12 12:26:23

1 réponses

le OutPutCache est un cache de page/contrôle qui a été sauvegardé sur le serveur pour gagner de la vitesse de traitement à partir du rendu de cette page/Contrôle.

le browser cache est des commandes d'en-tête que vous mettez sur la page et de donner l'instruction au navigateur des clients de garder la page sur la mémoire cache de l'ordinateur des clients pendant un certain temps et de ne pas la lire à partir du serveur.

le static cache est quand vous définissez cache pour le contenu qui est commun à tous les utilisateurs, et le Dynamic cache si lorsque vous définissez cache qui est différent pour la même page et dépend de l'utilisateur ou pour d'autres paramètres. Vous pouvez aussi dire que static est celui pour le contenu qui n'est pas modifié (par exemple les images, les pages html, etc.) ET dynamic est le cache pour le contenu qui change comme les pages aspx.

IIS peut définir une cache pour les images et tout ce type de contenu qui n'est pas changer et vous dites au navigateur de garder pour 'long' temps.

vous devez utiliser un la combinaison de toutes les cache pour obtenir le meilleur résultat et n'est pas ce que l'utiliser et ce n'est pas. Beaucoup de cache pour le contenu statique qui ne change pas beaucoup, moins de cache pour le contenu dynamique.

est-ce que le navigateur cache tous les fichiers js ou css?

navigateur ne faire que ce que vous lui dites de faire. Donc, vous avez besoin de mettre sur les en-têtes de page au navigateur pour combien de temps vous aimez le navigateur garder ces fichiers sur le cache client. Si vous n'avez rien réglé, alors L'IIS est réglé pour contenu statique comme Js et Css et des images, la date de création du fichier, et cela peut être utilisé par le navigateur pour demander au serveur en arrière s'il a besoin de le lire à nouveau ou non.

statique et dynamique

une information de plus sur la cache statique et dynamique est que le navigateur sur la cache dynamique demander au serveur s'il a besoin de mise à jour et si la réponse est oui, puis lire à nouveau la page. De cette façon, le navigateur toujours appeler le serveur, mais pas toujours récupérer le contenu.

l'autre façon est le statique, dans cette cache le navigateur cache le contenu et ne jamais demander au serveur de le relire. Par exemple, pour les images qui sont du contenu statique, vous mettez une grande cache et le navigateur ne demande plus jamais au serveur, mais utilisez les images de la cache client.

vous pouvez configurer ce cache de contenu statique sur le web.config

<staticContent>
    <clientCache cacheControlMaxAge ="8.00:00:00" cacheControlMode="UseMaxAge" />
</staticContent>

le cache dynamique pour le navigateur est quelque chose que vous devez faire programmatiquement. Vous définissez un paramètre sur l'en-tête, et lorsque le navigateur demande un contenu, vous lisez ce paramètre et vous décidez quoi rejouer, avec le nouveau contenu ou avec une commande à lire à partir du cache.

quelques exemples: créer un filtre ETag ASP.NET MVC

http://jagbarcelo.blogspot.com/2009/03/conditional-get-and-etag-implementation.html

Génération etags pour images en asp.net je ne sais pas.

 if I use both IIS cache and OutputCache?

en fait, il s'agit de deux opinions diférentes qui agit par eux-mêmes. Voyons quelques étapes pour ce qui se fait.

le Client est Un Navigateur : Merci de me donner la page par défaut.aspx

Serveur Responce : Ok attendre un peu. Voyons voir si je l'ai eu sur la moustache ? Non, Je le fais maintenant et je le garde pour OutPutCache. Maintenant, je vous le transmettre. (waiting time 600 ms + 70ms Network Lag) + 2000ms to download the mage

Client B Navigateur : Merci de me donner la page par défaut.aspx

Serveur Responce : Ok attendre un peu. Voyons voir si je l'ai eu sur la moustache ? Oui, je l'ai lu de cache et je l'ai envoyé. '(temps d'attente 100 ms + délai réseau 70ms) + 2000ms pour télécharger le mage

le Client est Un Navigateur : Merci de me donner la page par défaut.aspx, mon dernier cache dit que le fichier a date: 12/mars/2012.

Server Responce : hmm vous n'avez pas besoin de le relire parce qu'il n'est pas modifié, utilisez votre cache local. (waiting time 80 ms + 70ms Network Lag) + 0ms to download the page

quand la page trouvée sur OutputCache l'effet pour l'utilisateur est ce n'est pas attendre que la page commence à montrer somthing tellement.

lorsque la page trouvée non modifiée, l'effet est que l'utilisateur voit la page presque droit chemin parce que n'est pas attendre la page de télécharger.

quand le contenu est statique (comme l'image) et trouvé sur cache, alors le navigateur l'afficher de la bonne façon avec l'extérieur demandant au serveur, de sorte que c'est la manière la plus rapide possible que l'utilisateur voit quelque chose qui est sur la cache locale.

12
répondu Aristos 2017-05-23 12:25:05