1. Qu'est-ce que le cache ASP / pourquoi le cache
En fait, lorsque votre site Web est établi au début de la technologie ASP, ce qui peut ressentir est la commodité apportée par la technologie Web dynamique ASP, ainsi que la modification gratuite et le contrôle HTTP gratuit. Mais avec l'augmentation du volume d'accès, vous constaterez certainement que la vitesse d'accès de votre site deviendra de plus en plus lente et IIS est retelée. Ainsi, vous devez vouloir optimiser votre programme ASP, tel que la modification des bases de données avec de meilleures performances, l'établissement d'index, la rédaction de procédures de stockage, etc. Certaines de ces mesures n'ont pas besoin d'augmenter la pression des coûts, tandis qu'une partie de la pression des coûts (comme l'accès aux grappes à SQL), et l'effet ne l'est pas nécessairement.
Face à la pression de l'accès Web, je pense que la méthode la plus économique est d'utiliser la technologie d'optimisation du cache pour soulager la pression de service du Web.
L'augmentation du volume d'accès Web signifie généralement la croissance rapide de la demande de ressources suivante:
1. Augmentation du trafic de la carte réseau, il est nécessaire de consommer plus de traduis en réseau de traitement du CPU et de threads d'E / S réseau.
2. Il est nécessaire d'ouvrir / fermer la connexion de la base de données plus fréquemment (si la technologie de la base de données est utilisée - habituellement ASP utilisera la base de données comme stockage de données), le nombre de choses qui consomment sérieusement les ressources et la blocage causée par les ressources concurrentes des ressources concurrentes de transactions, qui augmenteront les E / S du réseau.
3. Si la session est utilisée, IIS consomme plus de mémoire afin de maintenir l'état, et la consommation de mémoire peut provoquer une mémoire physique insuffisante, provoque un échange fréquent entre la mémoire physique et la mémoire auxiliaire, ce qui fait que l'exécution du code s'arrête.
4. En raison de la réponse en temps opportun de l'accès, la défaillance de l'accès de la page Web sera causée, ce qui fera actualiser les utilisateurs, exacerbant ainsi les besoins des processeurs, de la mémoire et d'autres ressources.
En fait, compte tenu de l'application Web habituelle, l'exécution dynamique du code n'est pas nécessaire.
2. Classification du cache ASP
Résumé sans autorisation, le cache d'ASP peut être divisé en deux catégories:
1. Cache de fichier
Le cache de fichier SO-SoEt est de juger en fonction du jugement logique. Peut accéder au fichier statique à partir de la redirection Web vers la technologie, pour répondre aux besoins de réduction des CPU, les ressources de la base de données. Il existe de nombreuses applications de ce type. Le côté statique statique a un effet secondaire (avantages) - le peut être facilement inclus par les moteurs de recherche tels que Google. Certains systèmes de communiqués de presse, ont adopté cette technologie.
2. Cache de pause de film de fichiers
Le cache de fichier SO-Soal est également basé sur un jugement logique. Données sous forme de fichiers. Par exemple, nous stockons généralement des données au format XML, puis utilisons la technologie XSLT pour implémenter l'affichage (le traitement XML nécessite généralement une grande quantité de ressources CPU, donc IE lit généralement XML directement au client pour le gérer sur le processeur du client). C'est ainsi que le forum de CSDN est traité.
3. Cache de mémoire principale
De plus, vous pouvez également envisager de traiter le cache en mémoire et de stocker le contenu qui doit répondre en temps opportun en mémoire. Si un grand nombre de besoins d'accès sont concentrés sur plusieurs petites pages ou le stockage principal, je souhaite utiliser le cache de mémoire principal pour améliorer considérablement les performances d'accès Web.
3. Comment réaliser / utiliser le cache
Les problèmes suivants doivent être examinés pour mettre en œuvre le cache:
1. Quelles pages ne changeront pas en peu de temps?
Analysez votre propre site, il existe de nombreuses pages. Par exemple, un site a généralement des colonnes de nouvelles et d'informations. Ensuite, ces pages conviennent au cache avec des fichiers statiques. En fait, le système de communiqué de presse SOP est effectué, vous pouvez donc également vous référer aux idées de ces systèmes pour transformer votre page ASP dynamique d'origine.
2. Ces pages sont générées pour toutes les visites pour générer la même logique (c'est-à-dire ne pas faire la distinction entre les visiteurs).
À l'exception des colonnes telles que les nouvelles et les informations, tous les visiteurs regardent une interface, et l'application de ressources telles que les forums et autres ressources de consommation peut généralement être conçue comme une génération de logique unifiée (le même message, Zhang Sanli et Sisi sont les mêmes ). Vous pouvez également envisager de briser les données et d'utiliser la technologie du script en plus de la capacité de traitement du serveur, c'est-à-dire le navigateur client pour le traitement.
3. Utilisez le coût et la récolte du cache.
Principalement le temps pour les changements d'espace (réponse). Utilisez la technologie de cache pour pré-traiter le contenu fréquemment nécessaire pour améliorer la capacité de réponse du serveur Web, et surtout gagner la faveur des visiteurs.
Le prix est que la demande d'espace Web augmente et peut affecter l'effet d'accès.
Mais je pense que le cache approprié est supérieur aux inconvénients.
4. Au lieu d'utiliser du cache dans ces endroits
La page de requête dynamique, le contenu de requête de chaque personne est différent, donc les résultats de l'affichage ne sont pas les mêmes, il est donc peu probable qu'il génére le cache de résultat de requête, donc le cache est plus compliqué et au bas du taux d'utilisation du cache, ce qui entraîne Le coût de gestion.
Quatrièmement, analyse d'instance
Supposons que la disposition originale d'un forum de suggestions soit la suivante:
Dans le répertoire racine:
Default.asp Page d'accueil, généralement l'essence, la recommandation et similaires
Listborad.asp Ce fichier répertorie les noms et l'introduction de toutes les colonnes.
ListThread.asp Le fichier ne porte aucun paramètre pour indiquer tous les autocollants et transporter principalement pour représenter tous les autocollants d'une certaine pièce. Si Subbid est transporté pour indiquer le poste de la colonne spécifique. Si vous portez le paramètre de page pour indiquer la pagination du sujet.
ViewThread.asp répertorie un certain contenu d'autocollant. Nous supposons que les messages sont affichés comme un discours et que tous suivent les autocollants qui sont répertoriés. Le paramètre ID est le post à afficher.
Répondre.asp répond à un certain poste, transportez l'ID du paramètre pour répondre à un certain poste
Aucune autre discussion.
Ci-dessus, nous pouvons voir que si tous sont effectués en utilisant l'ASP / PHP d'origine, l'exécution de presque tous les fichiers ASP nécessite des opérations de base de données, une requête fréquente et plusieurs requêtes. Il convient de savoir que la base de données de requête entraînera éventuellement une baisse des performances, la vitesse de réponse diminue et l'impact de navigation lent sur les visiteurs ne sera pas propice à la qualité du Web. Plus important encore, pour les deux personnes en A et B, ils ont visité Viewthread.asp et similaires si les identifiants sont cohérents, alors plusieurs fois ils verront le même contenu (le code HTML reçu par leur navigateur est presque le même), mais pour Ce pour cela dans le même contenu, le serveur doit ouvrir la connexion de la base de données, requérir, lire des enregistrements et montrer que les enregistrements et les connexions de la base de données sont fermés. Essence Essence Essence Si plus de personnes sont accessibles par plus de personnes, le résultat final est que ces personnes aggravent les ressources du serveur. En fait, la main-d'œuvre en double pour le même contenu peut être optimisée avec la technologie du cache. Par exemple:
Après avoir soumis le contenu de REPY.asp, nous avons immédiatement appelé la fonction statique pour générer le contenu statique vers les fichiers HTML statiques tels que Viewthread_xxx.htm, puis lors de la visite de Viewthread.asp? La vue de fichier statique correspondante correspondante. De cette façon, lorsqu'un message n'est pas le plus récent, il est toujours fourni au contenu statique du spectateur;
Listborad.asp peut également implémenter statique. Nous pouvons analyser les paramètres qui peuvent être transportés, définir le nom du fichier de cache sur listboard_xx.htm et mettre à jour le listboard_xxx.htm lors de l'ajout d'une nouvelle colonne. ListThread.asp est similaire, mais en raison de plus de paramètres, il y aura beaucoup de fichiers de cache. Si vous souhaitez cache Listthread.asp? Il en va de même pour Default.asp.
Alors, comment juger quand mettre à jour? Quelle heure à jour?
讨论 ListThread.asp? Fichier statique. Notez qu'aucune existence ici signifie que l'émergence de nouveaux contenus nous oblige à mettre à jour.
Comment les fichiers ne peuvent-ils pas exister? supprimer. Nous pouvons supprimer tous les fichiers statiques comme Listthread_xxx_p2.htm lors de la publication d'un nouvel autocollant, de la suppression des autocollants et des autocollants en mouvement. De cette façon, le cache est informé.
Il reste encore un problème maintenant, comment générer des fichiers statiques?
Nous avons remarqué que le même contenu que nous avons mentionné auparavant.我们可以将改造前的 default.asp 、 ListThread.asp 等拷贝一个副本 , 取名为 Default_d.asp 、 Listthread_2.asp , 且在同一个目录中 (理论上 理论上 理论上 listThtrad.asp? Subid = 123 同 Listthread_d.asp? Les résultats d'accès de subid = 123 seront le même contenu), de sorte que dans la logique de la nécessité de générer des fichiers statiques, nous appelons la copie avant la modification par la demande d'accès Web, obtenons le code HTML et le stockons en tant que fichier statique. Cette demande Web est en fait équivalente avant que tout véritable visualiseur accède au contenu statique, le serveur lui-même est inspecté par le HTML qui sera sorti, puis renvoie ces code pour stocker la fonction de fonctionnement du fichier comme un fichier statique. De cette façon, le fichier de cache a été créé avant la vraie visionneuse.
Un tel schéma ne touche presque pas à la disposition d'origine, et il ne provoque guère des erreurs telles que 404 en raison de la transformation. Deuxièmement, les fichiers statiques aideront également que votre site est facilement inclus par des moteurs de recherche tels que Google. Pourquoi pas?
Enfin, rappelez-vous que grâce à l'accès Web, dans l'environnement de programmation ASP, de nombreuses personnes utilisent des composants XMLHTTP pour accéder, ce qui entraînera de nombreux problèmes. La ressource selon laquelle XMLHTTP se cachera les demandes, ce qui entraînera le contenu obtenu par nos demandes via ce composant, provoquant une confusion logique. Par conséquent, vous devez choisir les objets HTTP du serveur XML ou les composants WinHTTP pour implémenter des ressources de demande Web.
80 Langue post-piquée: il y a plusieurs éléments clés pour réaliser la technologie du cache,
L'application côté serveur, qui convient à plusieurs pages, il y a plus d'éléments qui ne sont pas souvent mis à jour;
Le fichier statique HTML est généré et la technologie du modèle est généralement utilisée pour générer des fichiers statiques via FSO ou AdoStream.
autre
En fait, la chose la plus importante est de décider de la technologie à adopter en fonction des besoins de votre propre système pour minimiser le nombre de données de données que possible et réduire la pression des bases de données. .
De plus, est-ce que l'on considère si le cache du client peut être utilisé pour améliorer l'efficacité?