Dans la plupart des cas, les serveurs proxy de mise en mémoire cache mettent un fichier en mémoire cache uniquement sur demande d'un utilisateur. Caching Proxy comporte un agent de mémoire cache qui assure une fonction de préchargement automatique en mémoire cache. Vous pouvez demander à ce que cet agent récupère automatiquement les URL spécifiées et les URL les plus utilisées et les place en mémoire cache avant qu'une demande soit émise.
Dans certains cas, vous devez définir le nom d'hôte du serveur proxy et indiquer le journal des accès à la mémoire cache pour permettre le chargement préalable dans cette dernière. Pour configurer l'agent de mémoire cache, dans les formulaires de configuration et d'administration, sélectionnez Configuration de la mémoire cache et utilisez les formulaires Préchargement de la mémoire cache et Régénération de la mémoire cache. Sachez que les fichiers correspondant aux résultats des requêtes (c'est-à-dire les fichiers dont l'URL comporte un point d'interrogation (?)) ne sont mis en mémoire cache que si la mise en mémoire cache des requêtes est activée.
Le préchargement et la régénération automatique de la mémoire cache offrent les avantages suivants :
Les inconvénients sont les suivants :
Pour être efficace, l'agent de la mémoire cache doit être lancé lorsque l'activité du serveur est faible et avant que ce dernier ne doive traiter les demandes des clients. Les fichiers sont alors disponibles en mémoire cache pour un traitement plus rapide des demandes les concernant. Par défaut l'agent de la mémoire cache est lancé toutes les nuits, à 3 heures, heure locale.
Remarques sur les configurations avec un serveur proxy inversé :
Pour des raisons de sécurité, lorsque vous utilisez une configuration avec un serveur proxy inversé, par défaut, désactivez la règle Proxy http:*. (Autrement dit, placez en commentaire cette règle dans le fichier ibmproxy.conf.) Cependant, si la règle est désactivée, l'agent de la mémoire cache ne réussit pas à envoyer des demandes et à rafraîchir le contenu du cache de Caching Proxy. Une erreur "403 Forbidden By Rule Error" apparaît dans le journal des erreurs et le rafraîchissement de la mémoire cache n'a pas lieu.
Pour contourner cet incident, utilisez cacheAgentService, qui est un service interne fourni par Caching Proxy. Pour activer le service, placez la directive Service suivante avant toute autre règle de mappage dans le fichier ibmproxy.conf :
Service /toute-chaîne-valide* INTERNAL:cacheAgentService
La variable toute-chaîne-valide correspond à une chaîne quelconque valide n'entrant pas en conflit avec les autres règles de mappage du fichier ibmproxy.conf.
Caching Proxy et l'agent de mémoire cache analysent tous les deux l'URI sur la base de cette directive Service. Au lieu d'envoyer directement l'URI à Caching Proxy, l'agent de la mémoire cache ajoute à l'URI le modèle /toute-chaîne-valide de la directive du service.
Par exemple, l'agent de la mémoire cache transforme l'URI suivante :
http://www.ibm.com/
en
/toute-chaîne-valide/http://www.ibm.com/
L'agent de la mémoire cache envoie l'URI et son préfixe à Caching Proxy. A sa réception de la demande, Caching Proxy supprime le préfixe /toute-chaîne-valide/. Si l'URI restante est une unité qualifiée complète, Caching Proxy répond directement à la demande sans mapper l'URI par rapport à d'autres règles.
En outre, l'agent de la mémoire cache peut envoyer une URI relative à Caching Proxy. Par exemple, si vous ajoutez LoadURL /abc/ à l'aide de la directive Service précédemment mentionnée dans le fichier ibmproxy.conf, l'agent de la mémoire cache transforme cette chaîne en /toute-chaîne-valide/abc/ et l'envoie à Caching Proxy. Caching Proxy reçoit l'URL, supprime le préfixe, mappe /abc/ par rapport aux autres règles de mappage et gère la demande en cas de correspondance.
Pour plus d'informations sur la directive Service, voir Service — Personnalise l'étape Service.
Sous UNIX et Linux,indiquez le nom d'hôte du serveur proxy dont la mémoire cache est préchargée ou régénérée. Sous Windows, ne précisez le nom d'hôte que si le serveur proxy en cours de régénération ne se trouve pas sur le serveur local. Notez que vous ne pouvez pas régénérer la mémoire cache sur un serveur éloigné pour charger les fichiers les plus fréquemment consultés car l'agent de mémoire cache local ne peut pas accéder au journal des accès de la mémoire cache sur le système éloigné.
Pour définir le nom d'hôte du serveur, dans les formulaires de configuration et d'administration, sélectionnez Configuration de la mémoire cache –> Régénération de la mémoire cache : Identification du serveur de destination de la mémoire cache.
Pour précharger la mémoire cache en y intégrant le contenu d'adresses URL spécifiques, dans les formulaires de configuration et d'administration, sélectionnez Configuration de la mémoire cache –> Préchargement de la mémoire cache. Dans ce formulaire, vous pouvez spécifier les URL de l'agent de mémoire cache à charger. Lors du lancement de l'agent, le proxy récupère ces pages en mémoire cache, qu'elles aient été ou non mises en mémoire cache précédemment. (Ces URL sont spécifiées par la directive LoadURL dans le fichier de configuration du proxy). Ce formulaire permet également de définir les adresses URL dont le contenu ne doit jamais être mis en mémoire cache. Il n'est pas nécessaire de définir un journal des accès à la mémoire cache pour ce type de préchargement.
Le formulaire Préchargement de la mémoire cache permet de configurer les options suivantes :
Pour précharger automatiquement les pages les plus consultées, utilisez le formulaire Configuration de la mémoire cache –> Régénérer la mémoire cache. Cette fonction nécessite un journal des accès à la mémoire cache pour le serveur proxy. Le nom et l'emplacement sont modifiables ; pour en savoir plus, voir Contrôle de Caching Proxy. Il est possible de déterminer automatiquement les URL les plus utilisées à l'aide du journal des accès à la mémoire cache. L'administrateur peut également préciser le nombre de pages fréquemment consultées à précharger dans la mémoire cache. (Ce nombre est indiqué dans le fichier de configuration du proxy par la directive LoadTopCached).
Le formulaire Régénération de la mémoire cache permet de configurer les options suivantes :
La fonction de suivi logique des liens est une fonction facultative de la régénération automatique de la mémoire cache. La plupart des pages Web contiennent des liens vers d'autres pages contenant des informations associées et les utilisateurs suivent souvent ces liens qui les amènent d'une page à une autre et d'un site à un autre. La fonction de suivi logique des liens offre la possibilité de mettre en mémoire cache ces chemins d'informations logiques. Grâce à cette fonction, l'agent de mémoire cache suit un niveau de liens hypertexte HTML indiqué sur les pages en cours de chargement et place toutes ces pages liées en mémoire cache. Les pages liées peuvent être installées sur le même hôte que la page source ou sur des hôtes différents. Un schéma est présenté à la figure 1.
Pour contrôler le processus de suivi logique des liens, l'agent de la mémoire cache comporte un nombre maximal d'URL à charger (le paramètre par défaut est 2000), une durée maximale d'exécution (le paramètre par défaut est deux heures) et un nombre maximal d'unités d'exécution utilisables (le paramètre par défaut est quatre). L'administrateur peut également configurer des contrôles supplémentaires. Par défaut, cette fonction est activée pour deux niveaux de hiérarchie mais son utilisation n'est pas autorisée sur plusieurs hôtes. De plus, un délai est inséré entre les demandes. Pour modifier ces paramètres, voir Directives du fichier de configuration du proxy associées.
L'agent de la mémoire cache est chargé et régénère ensuite la mémoire cache dans l'ordre suivant :
Sachez que l'agent de la mémoire cache ne vérifie pas si le nombre maximal de pages a été atteint tant qu'il n'a pas lancé la fonction de suivi logique des liens. Si le nombre maximal de pages (valeur appelée MaxURLs dans le fichier de configuration du proxy) est inférieur au nombre de pages récupérées aux étapes 1 et 2, aucune page liée n'est récupérée.
Les exemples suivants indiquent comment l'agent de la mémoire cache traite les priorités de régénération de la mémoire cache et comment fonctionne le suivi logique des liens, en fonction du nombre maximal d'URL indiqué (en considérant que la fonction de suivi logique des liens est configurée pour tous ces exemples).
Paramètre du fichier de configuration | Résultat |
---|---|
|
Si le journal des accès à la mémoire cache contient plus de 30 URL uniques, l'agent de la mémoire cache récupère les fichiers main.html et welcome.htm, ainsi que les 30 URL les plus demandées en se basant sur le journal des accès à la mémoire cache. La valeur MaxURLs n'ayant pas été atteinte, l'agent récupère et charge jusqu'à 18 URL liées aux pages déjà mises en mémoire cache. |
|
Si le journal des accès à la mémoire cache contient plus de 30 URL uniques, l'agent récupère les fichiers favorites.html et dislikes.html, ainsi que les 30 URL les plus demandées en se basant sur le journal des accès à la mémoire cache. Aucun autre fichier n'est récupéré en raison du dépassement de la valeur MaxURLs. |
|
Si le journal des accès à la mémoire cache contient plus de 20 URL uniques, l'agent de la mémoire cache récupère l'URL hi.htm et index.html, ainsi que les 20 URL les plus demandées en se basant sur le journal des accès à la mémoire cache, et jusqu'à 3 URL liées aux pages précédentes. Aucun autre fichier n'est récupéré, la valeur MaxURLs ayant été atteinte. |
L'agent de mémoire cache peut également être configuré en modifiant directement les directives appropriées dans le fichier de configuration du proxy. Pour obtenir ces directives, reportez-vous aux pages de référence suivantes dans l'Annexe B. Directives du fichier de configuration :
Si la régénération automatique de la mémoire cache est activée, l'agent de la mémoire cache exécute automatiquement une régénération à l'heure indiquée. Vous pouvez cependant exécuter l'agent de la mémoire cache à tout moment à partir de la ligne de commande.
Le fichier exécutable est le suivant :
serveur_racine correspondant à l'unité et au répertoire d'installation de Caching Proxy (par exemple, C:\Program Files\IBM\edge\cachingproxy\cp).
Sous Linux et UNIX, vous pouvez exécuter automatiquement l'agent de la mémoire cache à plusieurs reprises à l'aide du démon cron. Les travaux contrôlés par cron sont indiqués par l'ajout d'une ligne dans le fichier crontab du système. Exemple d'entrée de ce fichier de commandes sous Linux et UNIX :
45 16 * * * /usr/sbin/cacheagt
Cette commande lance l'agent de la mémoire cache tous les jours à 16 h 45, heure locale. Vous pouvez utiliser plusieurs entrées pour exécuter l'agent plusieurs fois. Pour plus d'informations, consultez la documentation du système d'exploitation traitant du démon cron.
Si vous utilisez un démon cron pour exécuter l'agent de la mémoire cache, n'oubliez pas de désactiver l'option de régénération automatique, soit en utilisant le formulaire de configuration Configuration de la mémoire cache –> Régénération de la mémoire cache, soit en modifiant le fichier de configuration du proxy. Dans le cas contraire, l'agent est exécuté plusieurs fois par jour.