Joram Use Cases OW2 Conference Nov10
Upcoming SlideShare
Loading in...5
×
 

Joram Use Cases OW2 Conference Nov10

on

  • 694 views

 

Statistics

Views

Total Views
694
Views on SlideShare
694
Embed Views
0

Actions

Likes
0
Downloads
0
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Joram Use Cases OW2 Conference Nov10 Joram Use Cases OW2 Conference Nov10 Presentation Transcript

  • Joram configurationfrom clustering to WAN distribution Serge Lacourte ScalAgent Distributed Technologies Serge.Lacourte@scalagent.com www.scalagent.com
  • 2Outline MOMs & Joram UC1: car certificates UC2: air force communications Conclusion © ScalAgent Distributed Technologies – 2001-2010
  • 3Messaging at the hospital Emergency service Emergency service The emergency MOM front end back end Orientation diagnosis Patient file Patient file 1 2 Step 1: push Doctor fills in a patient file, and pushes it on a waiting queue (with proper orientation and QoS) Step 2: pull The first available doctor (matching orientation) handles the first file from the queue, some time later © ScalAgent Distributed Technologies – 2001-2010
  • 4Messaging for you and me Sending a letter The postal MOM Receiving the letter 1 2 Step 1: push You write a letter, and pushes it into a public mailbox (with proper address) Step 2: pull I read the letters from my private mailbox, some time later © ScalAgent Distributed Technologies – 2001-2010
  • 5« Messaging » – Basic principles Weak coupling of actors Indirect communication : (space) Indirect naming of the target, multiple readers, changing reader, … Delayed message consumption : (time) Queuing « store-and-forward »  Application evolution & life cycle  Physical architecture, actors configuration, applications management Common properties Persistency and reliability, load-balancing Standards JMS (1999), AMQP (2010 ?) © ScalAgent Distributed Technologies – 2001-2010
  • 6JORAM MOM Open-Source & 100% Java Portable & light (jars < 1Mo), classical & embedded configurations Certified JMS 1.1 standalone & J2EE as part of JOnAS Highly efficient 1.000 to 25.000 msgs/s for a single server Configurable and extendable Deployment architecture Internal architecture OSGi components: communication, persistency, functional Business components collection / transformation / delivery (Mail, FTP, bridge, …) © ScalAgent Distributed Technologies – 2001-2010
  • 7Joram / AMQP / JMS MOM (actually) distributed Configurable deployment architecture Client / centralized server : ‘hub-and-spoke’ Distributed : ‘snow-flake’ client client Joram Peer-To-Peer Joram Joram Joram Provider Evolutive & mixed Joram JMS Joram Joram client client Joram Scalable client 1 to 32.000 (actually) distributed servers Supports multiples protocols : TCP, SSL, HTTP(s), UDP. © ScalAgent Distributed Technologies – 2001-2010
  • 8UC1 – car certificates © ScalAgent Distributed Technologies – 2001-2010
  • 9UC1 – car certificates The application Bull & Thales for the French Home Office Open the administrative processes related to car certificates Classic “centralized” Web application Remote access to centralized processes & database Great number of users Prefecture – local representative for car owners operations Car manufacturers – register batches of new vehicles Car vendors – register new vehicles, register ownership changes Car owners – read access, certificates, change of address ? Police – read car status © ScalAgent Distributed Technologies – 2001-2010
  • 10UC1 – Context and constraints Strong need for scalability & high availability Potential users: all car owners (36.000.000) Daily users: car manufacturers & vendors (24.000 at 04/10)  Load-balancing + fail-over Some processes are asynchronous Batch registration by car manufacturers Operations with offline validation and/or processing Application architecture with two levels Front-end & back-end Connected with a MOM © ScalAgent Distributed Technologies – 2001-2010
  • 11UC1 – Architecture 1/2 J2EE JOnAS application Separated in two levels: front-end and back-end Connected with a MOM: Joram ? Web MOM modjk Front-end Back-end SAN Scalability by clustering The MOM must help the clustered architecture © ScalAgent Distributed Technologies – 2001-2010
  • 12UC1 – Architecture 2/2 Load-balancing Administered objects: ClusterConnectionFactory, ClusterDestination Destination objects: ClusterQueue High-availability Using the SAN for the MOM data ... ... © ScalAgent Distributed Technologies – 2001-2010
  • 13UC1 – Conclusion Scalability by clustering Traditional approach Impacts the internal architecture of the MOM for efficiency Joram scales Configurable architecture with cluster dedicated objects Load balancing between clustered destinations High availability with SAN support Next step Joram usage in a cloud © ScalAgent Distributed Technologies – 2001-2010
  • 14UC2 – French Air Force The application CS Systèmes d’Information for the French Air Force Monitoring & control of a communication infrastructure A truly distributed application Large number of stations Medium message load Environment prone to failures © ScalAgent Distributed Technologies – 2001-2010
  • 15UC2 – French Air Force The application CS Systèmes d’Information for the French Air Force Monitoring & control of a communication infrastructure A truly distributed application Large number of stations Medium message load Environment prone to failures © ScalAgent Distributed Technologies – 2001-2010
  • 16UC2 – Context and constraints Truly distributed application Patchwork network WAN, LAN, ad-hoc Low throughput, high latency, message loss  Major reliability requirement Static hierarchical deployment Failure recovery central region4 region1 region2 … region4 station station station station … station station station station station © ScalAgent Distributed Technologies – 2001-2010
  • 17UC2 – Architecture Joram configured in mode peer to peer Ensures message reliability over a low quality network Loosely coupled JNDI Dedicated Network component Joram servers configured with a hardened version of Network Data compression, regulated data flow Failure detection and recovery TTL on messages, and DMQ for undelivered messages Heartbeat between servers Dynamic server reconfiguration © ScalAgent Distributed Technologies – 2001-2010
  • 18UC2 – Conclusion Reliability by message store & forward Basics of a MOM, should be true for a distributed application ! Joram provides it at MOM level, by configuring a peer-to-peer Joram Distributing a MOM brings specific issues Joram comes with all the sugar to makes this sweet TTL, DMQ, heartbeat, dynamic reconfiguration, loosely coupled JNDI Joram adapts to specific environments Definition of a new Network component Use the new component by configuring the Joram servers © ScalAgent Distributed Technologies – 2001-2010
  • 19Conclusion MOM interfaces & internal architectures JMS interface provides portability of client code AMQP protocol provides interoperability between client and server Inter server communications are not covered MOM deployment value in its architecture Joram conforms to JMS & AMQP Joram architecture is configurable and extendable Hub and spoke, snowflake, peer to peer Clustered administered objects & destinations Specialized components for communication, persistency, … © ScalAgent Distributed Technologies – 2001-2010
  • 20Conclusion Joram configures for a wide range of applications French car certificates Clustered J2EE (also ACOSS, CVF, Geneva State, …) French air force WAN distribution over a specific network (also Eads, Sofrelog, Sacem, …) CNES (French space agency) Mixed constraints, EAI Middleware for monitoring & control space missions Specification CCSDS - Prototype currently being industrialized Other OW2 projects JOnAS(J2EE), FraSCAti (SCA), Petals ESB (JBI), Cloudware Initiative © ScalAgent Distributed Technologies – 2001-2010