Sémantiques d'invocation et architectures distribuées

Classé dans Informatique

Écrit le en français avec une taille de 2,67 KB

1. Sémantique "Cela pourrait être"

Par exemple : UDP, méthodes CORBA sans retour. Il n'est pas certain si un objet a été exécuté une fois ou pas du tout. Cette sémantique n'applique aucune mesure de tolérance aux pannes et peut subir des échecs d'omission si l'invocation ou la réponse est perdue. Si elle échoue, le serveur contenant l'objet distant ne garantit pas l'invocation. Si un délai d'attente est défini, la réponse pourrait être reçue après l'échéance (asynchrone). C'est une sémantique utile dans les applications où il est acceptable que des invocations échouent.

2. Sémantique "Au moins une fois"

Par exemple : consultations, SUN RPC. L'invocation reçoit un résultat, garantissant que la méthode a été exécutée au moins une fois, ou une exception est levée. Elle peut être réalisée en relayant les messages sans réponse. Selon que la rupture survient lors de l'envoi ou de la réception, le résultat peut être arbitraire (par exemple, deux appels et une exécution double). Cette sémantique est valide lorsque la méthode est idempotente.

3. Sémantique "Au plus une fois"

Par exemple : TCP, Java RMI, CORBA. L'invocation de la méthode est exécutée une seule fois, ou une exception indique qu'elle n'a pas été exécutée. Cela applique toutes les mesures de tolérance aux pannes. Il n'y a pas d'erreurs d'omission, car les messages sont rejoués. Comme elle ne s'exécute qu'une seule fois ou pas du tout, il ne peut y avoir de décisions arbitraires.

Couches architecturales

  • Couche de présentation : Module d'initialisation, gestionnaire de session, dialogue manager, adaptation et validation d'entrée, channel adapter, modèles de présentation.
  • Couche de traitement : Opérations commerciales de mise en œuvre.
  • Couche de services aux entreprises : Intégration de données, Access Manager, services d'accès métier, adaptateurs de messages spécifiques.

Communication synchrone et intégrité

La communication synchrone génère des assurances supplémentaires concernant l'ordre de livraison et l'intégrité de la distribution multicast :

  • Intégrité : Un processus fournit chaque message une seule fois. Si un processus reçoit un message, il est envoyé à chaque membre de sa vue.
  • Accord : Les processus corrects livrent les mêmes messages à chaque vue.
  • Validité : Les processus transmettent toujours les messages qu'ils envoient. Si la remise échoue, une vue est fournie pour recevoir un message immédiat.

Entrées associées :