WOW !! MUCH LOVE ! SO WORLD PEACE !
Fond bitcoin pour l'amélioration du site: 1memzGeKS7CB3ECNkzSn2qHwxU6NZoJ8o
  Dogecoin (tips/pourboires): DCLoo9Dd4qECqpMLurdgGnaoqbftj16Nvp


Home | Publier un mémoire | Une page au hasard

 > 

Refonte du système d'information de la snel par la mise en place d'un module ERP pour la gestion automatique de paiement des factures par voie bancaire gràące à  l'intergiciel ActiveMQ


par Rodian KABEYA MUKULU
Institut Supérieur Pédagogique et Technique - Licence 2018
  

précédent sommaire suivant

Bitcoin is a swarm of cyber hornets serving the goddess of wisdom, feeding on the fire of truth, exponentially growing ever smarter, faster, and stronger behind a wall of encrypted energy

I.9.2 Les middlewares open sources

1. Java Open ReliableAsynchronous Messaging (ou JORAM)

1.1. Présentation

JORAM Messaging, est leMiddleware de consortium Object Web.

Object Web est aussi connu pour son serveur d'application Java nommé Jonas auquel est d'ailleurs intégré JORAM. JORAM est sortie en 1999 et est distribué sous licence LGPL depuisMai 2000.

1.2 . Architecture

Figure I.8:Architecture JORAM

1.3 . Implémentation

JORAM a une architecture interne élégante, basée sur le modèle d'agent.Un agent est un composant logiciel répondant à certains événements. Dans le cas de JORAM, les événements sont sous forme de messages.Les queues et les topics sont ainsi représentés par des agents.

Un utilisateur connecté à la plateforme est également représenté par un agent dit proxy. Cette approche offre une grande flexibilité, car elle permet la création et la suppression d'agents à la volée et sur n'importe quel broker. Un broker est donc uniquement un serveur d'agent (ouun container d'agent). À l'instar des EJB, ces agents ne peuvent pas encore être déplacés de broker en broker.

Le code source récupéré du SVN JORAM est assez bien documenté. Il est fait de « beans» séparés en Interfaces et Implémentations. Dansl'ensemble, le code respecte les bonnes pratiques de développement Java.

1.3.1 Langages pris en charge

Les langages par lesquels on peut accéder à JORAM sont :

Ø Java via l'interface JMS.

Ø C et C++ : À l'aide de JNI, permettant ainsi de simuler un environnement JMS.

1.3.2 Protocoles pris en charge

Le protocole interne de JORAM est propriétaire, et n'est pas documenté. Nous estimons que c'est un handicap dans la mesure où cela tend à limiter le nombre d'environnements dans lesquels des APIs sont offertes, et à rendre plus difficiles les interconnexions. Joram le désigne simplement par « TCP », mais il est évident qu'il y a un protocole, non spécifié, au-dessus de TCP/IP.

Ainsi, JORAM ne s'appuie pas sur des protocoles standards comme AMQP ou STOMP.

JORAM met à disposition des passerelles permettant d'étendre le nombre de protocoles gérés tout en se basant sur le protocole dit

« TCP ».

Ø Passerelle SOAP (grâce à un serveur d'application) : Permet la communication en SOAP avec le broker, donc en principe depuis des environnements autres que Java.

Ø Passerelle Mail : Cette passerelle permet d'envoyer et de recevoir des messages JMS en s'appuyant sur du SMTP (Protocole de mail). Pour cela JORAM utilise des queues et topics spécifiques. Cette passerelle est réalisée en Java.

Ø Passerelle FTP : JORAM réserve des queues spécifiques pour les canaux FTP. Cette passerelle fonctionne sur le même principe que la passerelle Mail. Elle est destinée à l'échange de messages volumineux. Cette passerelle est réalisée en Java.

1.3.3 Interfaces prises en charge

Selon les classes d'interface :

Ø Gestion des messages JORAM prend en charge le JMS 1.1 et est compatible avec JMS 1.0.2b. JORAM a aussi implémenté une interface JMS 1.1 destinée, au Framework J2ME, la version de l'environnement Java destinée aux mobiles, téléphones et PDAs. JORAM peut donc être mis en oeuvre à partir de terminaux mobiles compatibles Java.

JORAM prend aussi en charge JCA 1.5, lui permettant de se connecter aux différents PGI du marché (Open ERP, ...) qui le gèrent.

Ø Interfaces d'Administration, Monitoring, Configuration.

JORAM supporte l'interface d'administration JMX. Il est intégrable et configurable en Java. Il supporte aussi le JAAS pourl'authentification et les habilitations.

1.4. Gestion des messages

Outre les fonctionnalités standards, JORAM gère :

La notion de hiérarchie des topics : Chaque topic peut être lié à un autre (et un seul) et recevoir tous ses messages. À son tour, le parent topic reçoit tous les messages de ces parents et les envoie à tous ses topics fils. Il n'est pas possible de faire de traitement avec JORAM.

1.4.1 Persistance des messages

La persistance peut être gérée sur le système de fichier, dans une base java embarquée (Derby, voir plus loin pour plus de détail), ou sur une base de données relationnelle externe via JDBC.

Derby est un système de gestion de base de données relationnelle embarquée. « Embarquée » veut simplement dire qu'il n'est pas nécessaire d'avoir un serveur de base de données, au sens d'un processus distinct.

La base de données est dans le même processus que l'application. Le support de stockage de la base Derby est le fichier. Derby est une méthode avancée de lecture et d'écriture sur des fichiers.Nous n'avons pas trouvé, dans les documentations fournies par JORAM, d'information sur les optimisations possibles de la gestion de la persistance.

1.4.2 Répartition de charge et haute disponibilité avec plusieurs sites

Comme on l'a évoqué, JORAM est construit selon une architecture à base d'agents. Cette architecture est l'objet d'un livre blanc disponiblesur le site du produit.

Grâce à son architecture, JORAM assure :

Ø La disponibilité : pour rappel, la défaillance d'un serveur n'affecte que les clients JMS connectés à ce serveur. Les autres continuent à fonctionner en accédant à d'autres copies du domaine. La synchronisation des domaines se fait d'une manière transparente, selon un principe maître-esclave.

Ø Répartition de charge : les applications clientes sont réparties sur plusieurs serveurs de telle sorte que la charge engendrée par la gestion des domaines soit répartie entre les serveurs. Cette répartition peut soit être réalisée manuellement (configuration et utilisation du « Store and Forward »), soit être confiée à un load-balancer.

1.5. Interopérabilité avec d'autres MOMs

JORAM fournit un squelette de passerelle avec d'autres MOM gérant leJMS 1.1.

1.5.1 Gestion de la sécurité et d'un annuaire

JORAM peut être configuré pour utiliser des connexions SSL / TLS.

Il gère l'authentification et l'autorisation.

Des fichiers de configuration au format XML sont utilisés pour définir la configuration de sécurité. Il est possible également de personnaliser la gestion de la sécurité au travers JAAS.

Mais ces aspects ne sont pas suffisamment documentés.

1.5.1 Administration

JORAM met à disposition une interface graphique d'administration. Elle se base sur l'utilisation de JMX.

précédent sommaire suivant






Bitcoin is a swarm of cyber hornets serving the goddess of wisdom, feeding on the fire of truth, exponentially growing ever smarter, faster, and stronger behind a wall of encrypted energy








"Il faudrait pour le bonheur des états que les philosophes fussent roi ou que les rois fussent philosophes"   Platon