mercredi, juillet 26, 2006

Annuaires d'adaptateurs PAAM

Une des fonctions assurées dans PAAM est la recherche d'adaptateurs répondant à certaines spécifications. Pour l'instant, nous faisons appel à une liste localea u gestionnaire (PAAM-DME - Decision Making Engine). Cette liste est une sorte d'annuaire des adaptateurs connus du gestionnaire.

Nous proposons d'étendre cette notion et d'en faire un service à part entière de l'architecture PAAM.

Ce Web Service fournira les services suivants:

  • fournir une liste des adaptateurs qu'il connait et qui répondent à une interrogation qui comprend au moins une urn d'adaptateur PAAM et éventuellement d'autres critères (gratuité, certification par un tiers de confiance...),

  • fournir une liste des nouveaux adaptateurs référencés par cet annuaire depuis une certaine date (pour permettre la diffusion de listes d'adaptateurs entre annuaires),

  • recevoir et enregistrer une déclaration d'existence d'un adaptateur indiquant au moins l'URN de cet adaptateur et l'URL de la description WSDL qui permet de l'utiliser.

Compte tenu de l'évolutivité nécessaire de ces annuaires et du fait qu'ils seront de relativement petite taille, nous proposons d'adopter un format XML. Cela n'empêchera pas qu'un annuaire particulier puisse ranger ses informations dans une base de donnée, mais cela précise le mode de structuration retenu pour les informations.

Si un annuaire ne référence pas d'adaptateurs correspondant à une demande, il peut relayer la demande vers d'autres annuaires. On utilisera probablement la technique des cheminements aléatoires pour optimiser la recherche d'adaptateurs sans inonder le réseau de messages de recherche.

Afin de gérer une certaine dynamicité des adaptateurs, à chaque adaptateur pourra être associé des informations complémentaires de périodes d'utilisabilité. Le calendrier de disponibilité pourra fonctionner de la façon suivante:

- si cette information n'est pas indiquée, l'adaptateur est supposé toujours disponible;

- si cette information est disponible, elle pourra prendre différentes formes telles que 'disponibilité tous les jours de 0h à 6h UTC', 'disponibilité du1/12/2006 au 3/2/2007'; la représentation exacte reste à déterminer, mais tirera probablement profit des formats de stockage d'agendas.

La dynamicité de cet agenda reste à étudier. Par exemple, si un adaptateur a une longue file de traitements en attente prévient-il les annuaires chez qui il se sait référencé qu'il ne va pas être disponible.

Le gestionnaire pourra considérer cette information comme le premier facteur de choix entre plusieurs adaptateurs équivalents.


Le gestionnaire passe à un annuaire une liste de types d'adaptateurs et reçoit en retour une liste d'adaptateurs. Si l'annauaire contacté ne connait pas d'instance d'un des adaptateurs demandé, il peut, optionnellement, relayer la demande à d'autres annuaires suivant une stratégie qui lui est propre. On lui demande donc soit une recherche simple (locale), soit une recherche étendue.

Implicitement, on voit que lorsqu'un adaptateur veut se rendre accessible dans PAAM, il doit se référencer auprès d'au moins un annuaire PAAM.