|
Le module Servlet ne contient pas uniquement que des servlets mais aussi
les outils qui aide la servlet Rup à interpreter les requettes
Http, c'est à dire à parser les objets Soif et à
mettre à jour le fichier data.xml regroupant tous les robots enregistrés....
Le travail effectué par la servlet se limite donc à la création
du fichier data.xml. Mais, nous souhaitons contacter à une date
quelconque les moteurs de recherches
pour les notifier des mises à jours des pages web effectuées
sur un site web distant auquels ils se sont enregistrés. De plus
cette notification est propre à chacun des moteurs. Elle doit donc
se faire en fonction de leurs préférences :
- Quels sont les sous espaces webs modifiés du site.
- A quels périodicité veulent-ils être notifiés.
- Quels types de pages modifiées les intéressent-ils?
Pour pouvoir fournir ce service on a besoin de la présence de
deux fichiers : l'un contenant les robots et leurs préférences
respectives (data.xml) l'autre contenant la liste de tous les fichiers
modifiés sur le server Web. Ce dernier fichier (log.txt) est un
fichier log qui fait office d'historique des modifications sur le server
Web. Il est généré par un script Perl à un
interval régulier définit par l'administrateur.
Ces deux fichiers vont être victimes de leurs succés : ils
vont être les arguments d'un programme java filter
dont le rôle est de parser simultanément les deux fichiers
afin de mettre de coté les futures informations spécifiques
à chaque moteur de recherche. Cependant, ces informations ne vont
pas être directement envoyées vers leurs destinataires car
ces derniers désirent, peut-être, être notifier ,par
exmple, tous les 5 jours. Il est donc nécessaire de garder trace
successivement des informations ainsi recueillies et de les enrichir au
fur en attendant le moment de les envoyer.
Récapitulons le mécanisme par un graphe :

Les trois programmes Indexer, Filter, Sender sont
lancés successivement et dans cet ordre par un scheduler.
Représentons le diagramme du scheduler :

Conclusions :
En fait Filter ne génere pas toujours des fichiers .info. En effet
il se peut qu'aucune des périodes d'attente de mises à jours
des moteurs de recherche n'arrive à terme.
Dans ce cas, les informations sont receuillies dans un fichier spécial
data.ser qui sera remis en mémoire lors du prochain filtre en mettant
à jour la période d'attente.
Il est interressant de remarquer l'efficacité du programme filter
qui tout en parsant simultanément les deux fichiers log.txt et
data.xml parcours le fichier data.ser pour se remémorer des informations
recuillies lors d'un précédent fltrage pour prendre enfin
la décision ultime de générer, oui ou non, un fichier
.info correspondant à l'ensemble des informations receuillies successivement.
|