Je travaille sur l'architecture d'un SI et je me pose des questions conceptuelles sur la mise en oeuvre d'échanges asynchrones entres différents composants du SI.
Je vais partir d'un exemple pour expliquer ma problématique. Lorsqu'un utilisateur créer un patient dans un composant Patients. Je veux qu'un dossier médical soit automatiquement créer dans un autre composant Dossier Médical.
Je ne veux pas que l'utilisateur qui crée le patient doivent attendre que le dossier médical soit créer pour avoir confirmation de la création de son patient. Ceci pour plusieurs raisons :
- performances (la création d'un dossier médical est longue)
- ne pas annuler la création du patient (et remonter une erreur à l'utilisateur) s'il y a un problème lors de la création du dossier médical.
Par contre, ce que je veux, c'est que l'utilisateur soit sûre qu'à un moment donné, un dossier patient sera bien créer pour le patient qu'il vient de créer.
Pour répondre à cette problématique, je doit mettre en place des échanges asynchrones entre mon composant Patients et mon composant Dossier Médical.
Je voulais avoir des retours d'expérience sur cette problématique, comment l'avez vous mise en oeuvre, est ce que vous vous êtes basés sur des framework existant ? Est ce que c'est framework permettent de facilement rejouer les messages en cas de problèmes, ...
Pour information, les différents composants sont développez en java.
Partager