JORAM Java Open Reliable Asynchronous Messaging

publicité
JORAM
Java Open Reliable
Asynchronous
Messaging
http://www.scalagent.com
Introduction
JORAM implémente la norme JMS via la plateforme SCALAGENT
JMS normalise l’accès des programmes Java aux
middlewares à messages (Message Oriented
Middleware)
Les MOM permettent l’intégration d’applications
hétérogènes et indépendantes
Message Oriented Middleware
(MOM)
Modèle de communication entre logiciels
Intégration de modules hétérogènes distribués
Indépendance (asynchronisme)
Fiabilité
NT
Principe de base des MOM
Message Queueing
Queues de messages persistantes
Transmission des messages asynchrone (stockage des
messages si nécessaire)
Reprise après panne
Un émetteur remet son message au système et peut
continuer son exécution sans se soucier de l’état du
destinataire
Caractéristiques des MOM
Modes de communication
Point-à-point (PTP): émetteur, récepteur et queue
Publication/Souscription (Pub/Sub): émetteur, abonné
et nœud
Modèle de programmation
Réception explicite / implicite
Messages
Messages dotés d’attributs et de propriétés
Priorités, garantie de délivrance
L’interface Java Message Service
(JMS)
API Java d’accès uniforme aux systèmes de
messagerie
Client
Client
Client
JMS
Provider X
JMS
Client
Client
JVM
MQ X
Provider X
JVM
MQ X
MQ X
MQ X
La plate-forme SCALAGENT
Bus logiciel à base d’agents communicants
Agents = objets réactifs
 Persistants
 Légers : infrastructure d’exécution partagée au sein d’un serveur d’agents
Modèle événement / réaction asynchrone
 Événement : changement d’état
significatif du système auquel
un ou plusieurs agents réagissent
 Événement  Notification
 Réaction  fonction dans la classe
Agent
Agent
SendTo
Agent
React
Channel
L’architecture distribuée SCALAGENT
Infrastructure basée sur un bus à messages
Agent
Agent
SendTo
Channel
Engine
mq
Agent
Agent
React
Channel
Engine
mq
Server B
Server A
Acheminement des notifications
Exécution de la réaction du destinataire
Distribution: forte interconnexion des bus locaux
Les propriétés de la plate-forme
Persistance
Sauvegarde des agents et notifications
Atomicité
Cohérence garantie par un moniteur transactionnel
Persistance + Atomicité = Fiabilité
Une notification est délivrée une et une seule fois
Ordonnancement causal
A
C
Les notification sont délivrées
selon un ordre causal
B
JORAM
JORAM est l’interface JMS du MOM SCALAGENT
Les queues et topics sont des agents
Les messages sont encapsulés dans des notifications
Délivrance asynchrone
Garantie de délivrance
Reprise après panne
Apports de l’infrastructure à agents
Architecture totalement distribuée
Scalabilité
JMS via le MOM Scalagent
MOM Scalagent
QueueSender
QueueSession
QueueConnection
Connexion TCP
Agent Proxy
Agent Queue
queue
QueueConnection
Client 2
Clients JMS
Client 1
Message JMS
QueueSession
QueueReceiver
Message JMS
Agent Proxy
Connexion TCP
Intégration dans JOnAS
JORAM implémente la partie ASF (Application
Server Facilities) de la spéc. JMS
Intégration de JORAM en tant que ressource dans un
environnement transactionnel distribué tel qu’un serveur EJB
Envoi et réception de messages dans des transactions
gérées par le serveur EJB
Réception asynchrone via les « Message-driven Beans »
Points forts de JORAM
Récepteur
Architecture distribuée
Facilité de mise en oeuvre
Passage à l’échelle
Serveur 1
Queue
Serveur 0
QueueConnectionFactory
QueueConnectionFactory
Emetteur
Serveur 2
Implémentation complète des « Application
Server Facilities »
Intégration au serveur EJB JOnAS
Téléchargement