Java Messaging Service
Java Messaging Service
What is JMS?
JMS is a Java based Message-Oriented Middleware (MOM) MOM is type of Enterprise Application Integration (EIA)
What?!?
Lets take a step back and look at the issue we are trying to solve
Who has the Product? How Much? Supply Chain Management Vendor (SUSE Linux/MySQL)
Do we need more product? Who do we get the product from? Can we buy more product?
In the previous example we put the burden of interacting with these heterogeneous systems on the Supply Chain
What if we need info between systems Multiple Systems to get the same data Changes in any system have impacts across multiple systems Development costs grow with every change and any new system added
Who has the Product? How Much? Supply Chain Management Vendor (SUSE Linux/ MySQL)
Enter EAI
As per Gartner EAI attempts to allow unrestricted sharing of data and business processes among any connected application or data sources in the enterprise
Mediation
When a change in one systems data happens the system notifies an EAI component EAI component synchronizes this data across all systems
EAI
I changed Something: Data Stored Local
Who has the Product? How Much? Vendor (SUSE Linux/ MySQL) Supply Chain Management
Federation
EAI acts as the Middle man on any data managed by any system. Performs all interactions on each system
EAI
I changed Something: Tell someone
Who has the Product? How Much? Vendor (SUSE Linux/ MySQL) Supply Chain Management
This can also be leveraged between the systems This now provides unified way to access the data from any system
EAI
Sales (SOLARIS/DB2)
3. We sold A Lot!
Do I have $ to make purchases Finance (MS Windows MSSQL) Supply Chain Management
EAI Conclusion
Why duplicate data and/or data access across an enterprise system Instead standardize and centralize
http://en.wikipedia.org/wiki/Enterprise_application_integration
Insulate the developer from the disperate systems they may have to interface
Most MOMs have the ability interface with many intefaces (JDBC, WebServices, Other MOMs) Perform Routing, Transformation, and Storage functionality Replace Sockets, CORBA,RMI Allows for Asynch delivery
Queue (PtoP)
A producer posts to a queue for a consumer Asynch
The consumer can be turned off when the producer sends to the queue The producer can be down when consumer retreives the message from the Queue
http://docs.jboss.org/jbossas/getting_started/v4/html/mdb.html
http://docs.jboss.org/jbossas/getting_started/v4/html/mdb.html
http://static.springframework.org/spring/docs /2.5.x/reference/jms.html