Windows confidentiel Conserver votre caches fermer
Raymond Chen
caches peuvent améliorer les performances, mais vous devez les utiliser correctement. Il existe généralement beaucoup de paramètres que vous pouvez fiddle avec, mais même si stratégies votre cache sont réglés correctement, vous devez utiliser le cache correctement.
Voici un exemple basé sur des événements réels. J'ai transposé le scénario dans les lecteurs sont plus facilement compréhensible sorte que je ne devez pas passer relatives aux codes d'une technologie qui est inutile au problème sous-jacent par.
Supposons qu'une société basés à New York a un serveur Web central qui fonctionne comme une archive de document. La société effectue demandes comme « autoriser me la Petition pour Dismissal dans le cas de Johnson nous archivés sur 23 juin 2005. » Cela est efficace une page Web statique depuis que documenter jamais modifications, si la petition doit être mis à jour, un avenant est archivé alors que le document d'origine reste inchangé, car ils déjà d'archivé, il. Pour modifier la petition d'origine qu'ils souhaitez devez une machine de temps pour revenir en arrière dans le temps. (Et lorsqu'ils sont au, ils pouvez accidentellement modifier au cours de humaine historique par le biais des action apparemment insignifiantes.)
Ce modèle d'utilisation correspond bien à un serveur proxy Web la mise en cache. Si quelqu'un demande de la juin Petition 23 et puis une heure courte ultérieurement quelqu'un d'autre demande le même document, le serveur proxy peut répondre à la deuxième requête et fournir les mêmes résultats que la première requête, l'enregistrement d'un aller-retour sur le serveur central.
Cette organisation spécifique déjà eu un serveur proxy Web la mise en cache et configuré le bureau Miami pour en tirer parti. Mais ils ne trouvent aucune amélioration des performances. Même lorsque vous demandez le même document plusieurs fois dans une ligne à partir du proxy, la réponse était tout simplement lente en tant que demande le document directement depuis le serveur central. Ce qui cause du problème ? Trouvé le serveur proxy rompu ?
Le serveur proxy a, en fait, fonctionne parfaitement. Le problème était où le serveur proxy était trouve : le bureau Miami a une connexion lente à New York et utilisait le proxy Web la mise en cache qui a été installé sur le bureau de New York.
Le schéma de la figure 1 facilite assez clair pourquoi le proxy n'a pas accélérer rien. Même si le proxy n'a un travail parfaite et chaque requête peut être rempli sans aller sur le serveur central, les documents toujours deviez être transférées via la connexion lente entre Miami et que Paris.
La figure 1 serveur proxy sur le côté incorrect d'une connexion lente (cliquez sur l'image pour l'agrandir)
Si vous prévoyez d'utiliser un cache, le cache doit être plus rapide que la chose, qu'elle est mise en cache. Dans cet exemple, la connexion du Bureau Miami au serveur proxy doit être plus rapide que la connexion du Bureau Miami au serveur central. Le serveur proxy doit être installé plus près au bureau Miami. Pour de meilleurs résultats, le serveur proxy doit être installé dans Miami, comme illustré figure 2 .
La figure 2, de configuration proxy beaucoup plus utile pour le bureau Miami (cliquez sur l'image pour l'agrandir)
Avec le serveur proxy situé dans Miami, lorsqu'un avocat de Miami souhaite appeler de la juin Petition 23, la demande est accèdent au proxy locale, qui est rapidement rapidement main sur le document dans son cache. Si le document n'est pas déjà dans le cache, le document est récupéré à partir du serveur et puis mis en cache pour la prochaine fois que quelqu'un dans le bureau Miami demande.
Caches tirer parti de localité temporelle, mais déplacer le proxy vers le bureau Miami exploite également localité géographique : les avocats dans le bureau Miami ont tendance à demander des différents documents que les avocats dans le bureau de New York (car, bien sûr, ils gèrent différents cas) et un cache différent pour chaque bureau à distance permet à chacun d'eux répondre à son bureau affectée mieux.
L'organisation installé un serveur proxy dans le bureau Miami et configuré les ordinateurs dans ce bureau pour utiliser le proxy local. Elles sont maintenant satisfaits les performances.
De Raymond Chen Site Web, Old New Thinget son livre libellée identique (Addison-Wesley, 2007) les deux traitent de l'historique de Windows et de la Win32 programmation. Certains soda club obtiendrez que stain des.