Download presentation
Presentation is loading. Please wait.
Published byOsborn Lamb Modified over 9 years ago
1
SOA-5: Did You Get The Message? Giovanni Boschi Director, Sonic Products
2
© 2008 Progress Software Corporation2 DEV-5: Did You Get The Message? Agenda What Messaging Is, What It Is For Java ™ Message Service Overview SonicMQ ® Clustering, DRA, and CAA Did You Get The Message?
3
© 2008 Progress Software Corporation3 DEV-5: Did You Get The Message? Critical SOA Infrastructure Requirements Reliability, availability, performance Geographic distribution, organizational federation Heterogeneous SOA Management, visibility, control What if something goes wrong? What if everything goes right?
4
© 2008 Progress Software Corporation4 DEV-5: Did You Get The Message? The Evolution of Message-Oriented Middleware 1960 1970 1990 2000 2010 Mainframe (Queueing) TCAM/IMS TCAM/CICS N-Tier (Pub/Sub) Teknekron, Reuters, MQSeries, DEC MessageQ SOA (JMS, ESB, EDA) SonicMQ
5
© 2008 Progress Software Corporation5 DEV-5: Did You Get The Message? RFC 1149 - Carrier Pigeon Internet Protocol Network Working Group D. Waitzman Request for Comments: 1149 BBN STC 1 April 1990 A Standard for the Transmission of IP Datagrams on Avian Carriers Status of this Memo This memo describes an experimental method for the encapsulation of IP datagrams in avian carriers. This specification is primarily useful in Metropolitan Area Networks. This is an experimental, not recommended standard. Distribution of this memo is unlimited. Overview and Rational Avian carriers can provide high delay, low throughput, and low altitude service. The connection topology is limited to a single point-to-point path for each carrier, used with standard carriers, but many carriers can be used without significant interference with each other, outside of early spring. [... ]
6
© 2008 Progress Software Corporation6 DEV-5: Did You Get The Message? Agenda What Messaging Is, What It Is For Java Message Service Overview SonicMQ Clustering, DRA, and CAA Did You Get The Message?
7
© 2008 Progress Software Corporation7 DEV-5: Did You Get The Message? JMS Overview
8
© 2008 Progress Software Corporation8 DEV-5: Did You Get The Message? JMS Messages Message defines “standard headers” and “message properties” Standard Headers: JMSDestination, JMSReplyTo, JMSTimestamp, JMSExpiration, JMSDeliveryMode, JMSPriority, JMSMessageID, JMSCorrelationID Message Properties: user-defined name/value pairs Subtypes define different types of message body BytesMessage: stream of bytes MapMessage: name/value pairs ObjectMessage: serialized object StreamMessage: stream of typed primitives TextMessage: text string or XML document
9
© 2008 Progress Software Corporation9 DEV-5: Did You Get The Message? JMS Administered Objects “Administered objects” encapsulate things you want to change in deployment, without changing code: JMS provider, logical destinations, connection and tuning parameters Queue v. Topic defines distinct “messaging domains” Most interfaces have domain-specific subtypes
10
© 2008 Progress Software Corporation10 DEV-5: Did You Get The Message? Messaging Domains Reservations Ticketing Order fulfillment Online trading Point to PointSenderSender PotentialReceiverPotentialReceiver PotentialReceiverPotentialReceiver QueueQueue Stock ticker Price changes Catalog updates Data replication Publish and SubscribePublisherPublisherTopicTopic SubscriberSubscriber SubscriberSubscriber
11
© 2008 Progress Software Corporation11 DEV-5: Did You Get The Message? JMS Connections The actual network connection TCP, SSL, HTTP/S Authentication Identity user/pw, certificate Factory for Sessions
12
© 2008 Progress Software Corporation12 DEV-5: Did You Get The Message? JMS Sessions Sessions create and “own” Producers, Consumers Sessions create Messages Sessions define ordered sequence of production, consumption Sessions create and “own” Producers, Consumers Sessions create Messages Sessions define ordered sequence of production, consumption Acknowledgement Mode AUTO CLIENT DUPS_OK SINGLE_MESSAGE Transactional XA Acknowledgement Mode AUTO CLIENT DUPS_OK SINGLE_MESSAGE Transactional XA
13
© 2008 Progress Software Corporation13 DEV-5: Did You Get The Message? JMS Producers and Consumers Producers Destination (fixed or dynamic) Delivery Mode PERSISTENT NON_PERSISTENT NON_PERSISTENT_REPLICATED DISCARDABLE TTL (Message Expiration) Priority
14
© 2008 Progress Software Corporation14 DEV-5: Did You Get The Message? Agenda What Messaging Is, What It Is For Java Message Service Overview SonicMQ Clustering, DRA, and CAA Did You Get The Message?
15
© 2008 Progress Software Corporation15 DEV-5: Did You Get The Message? Head Office Regional Office Partner Business Application Business Application Business Application Business Application Business Application Business Application Business Application Regional Office Business Application Business Application Business Application Cluster PS PS Broker Cluster PS PS PS Global Distribution and Federation Brokers, Clusters, Nodes, and DRA
16
© 2008 Progress Software Corporation16 DEV-5: Did You Get The Message? Broker is the basic message server Brokers can be Clustered A cluster acts like one Broker in terms of messaging Messages are automatically routed to all cluster members Brokers alone or in a cluster can be in Primary-Backup CAA ™ pairs A Node is either a broker or cluster Dynamic Routing Architecture (DRA) on demand connections between Nodes Node-to-Node Authorization/Authentication Cluster PS Broker Cluster PS PS PS Brokers, Clusters, Nodes, and DRA
17
© 2008 Progress Software Corporation17 DEV-5: Did You Get The Message? Headquarters FAULT TOLERANT SERVER PAIR PRIMARY SERVER SECONDARY SERVER Business Application Business Application Business Application Business Application Business Application High Availability through Replication Sonic Continuous Availability Architecture CLIENTS PSPS Message Server
18
© 2008 Progress Software Corporation18 DEV-5: Did You Get The Message? Headquarters Business Application Business Application Business Application Business Application Scalability through Clustering Volume and Throughput Scalability within a Domain Business Application Message Server PSPS Business Application Broker Cluster PS PS PS Business Application Broker Cluster PS PS PS
19
© 2008 Progress Software Corporation19 DEV-5: Did You Get The Message? Data Center Processing Center Business Application Business Application Business Application Headquarters Business Application Business Application Business Application Business Application Global Reach through Dynamic Routing A way to reliably connect services across domains Regional Office Business Application Business Application Business Application PSPS Broker Cluster PS PS PS Cluster Partner PS
20
© 2008 Progress Software Corporation20 DEV-5: Did You Get The Message? In Summary Enterprise Messaging enables Application Reliability, Availability, Performance, Scalability Business Agility through Loosely Coupled Architecture SonicMQ enables Globally Distributed Architecture Business Continuity with HA built into the software Heterogeneous Connectivity (Java, ABL, J2EE, C, C++, C#, HTTP, SOAP, … ) You need it in case something goes wrong – but more importantly, in case everything goes right!
21
© 2008 Progress Software Corporation21 DEV-5: Did You Get The Message? For More Information, go to… Java Message Service Specification: http://java.sun.com/products/jms/docs.htmlhttp://java.sun.com/products/jms/docs.html Tutorial: http://java.sun.com/products/jms/tutorial/http://java.sun.com/products/jms/tutorial/ PSDN http://www.psdn.com/library/kbcategory.jspa?categoryID=1286 Documentation: SonicMQ Application Programming Guide SonicMQ Deployment Guide Other Google “RFC 1149”
22
© 2008 Progress Software Corporation22 DEV-5: Did You Get The Message? Questions ?
23
© 2008 Progress Software Corporation23 DEV-5: Did You Get The Message? Thank You
24
© 2008 Progress Software Corporation24 DEV-5: Did You Get The Message?
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.