24
SOA-5: Did You Get The Message? Giovanni Boschi Director, Sonic Products

SOA-5: Did You Get The Message? Giovanni Boschi Director, Sonic Products

Embed Size (px)

Citation preview

Page 1: SOA-5: Did You Get The Message? Giovanni Boschi Director, Sonic Products

SOA-5: Did You Get The Message?

Giovanni BoschiDirector, Sonic Products

Page 2: SOA-5: Did You Get The Message? Giovanni Boschi Director, Sonic Products

© 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?

Page 3: SOA-5: Did You Get The Message? Giovanni Boschi Director, Sonic Products

© 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?

Page 4: SOA-5: Did You Get The Message? Giovanni Boschi Director, Sonic Products

© 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

Page 5: SOA-5: Did You Get The Message? Giovanni Boschi Director, Sonic Products

© 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. [ ... ]

Page 6: SOA-5: Did You Get The Message? Giovanni Boschi Director, Sonic Products

© 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?

Page 7: SOA-5: Did You Get The Message? Giovanni Boschi Director, Sonic Products

© 2008 Progress Software Corporation7 DEV-5: Did You Get The Message?

JMS Overview

Page 8: SOA-5: Did You Get The Message? Giovanni Boschi Director, Sonic Products

© 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

Page 9: SOA-5: Did You Get The Message? Giovanni Boschi Director, Sonic Products

© 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

Page 10: SOA-5: Did You Get The Message? Giovanni Boschi Director, Sonic Products

© 2008 Progress Software Corporation10 DEV-5: Did You Get The Message?

Messaging Domains

Reservations

Ticketing

Order fulfillment

Online trading

Point to Point

SenderSenderSenderSenderPotentialPotentialReceiverReceiver

PotentialPotentialReceiverReceiver

PotentialPotentialReceiverReceiver

PotentialPotentialReceiverReceiver

QueueQueueQueueQueue

Stock ticker

Price changes

Catalog updates

Data replication

Publish and Subscribe

PublisherPublisherPublisherPublisher TopicTopicTopicTopic

SubscriberSubscriberSubscriberSubscriber

SubscriberSubscriberSubscriberSubscriber

Page 11: SOA-5: Did You Get The Message? Giovanni Boschi Director, Sonic Products

© 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

Page 12: SOA-5: Did You Get The Message? Giovanni Boschi Director, Sonic Products

© 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

Page 13: SOA-5: Did You Get The Message? Giovanni Boschi Director, Sonic Products

© 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

Page 14: SOA-5: Did You Get The Message? Giovanni Boschi Director, Sonic Products

© 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?

Page 15: SOA-5: Did You Get The Message? Giovanni Boschi Director, Sonic Products

© 2008 Progress Software Corporation15 DEV-5: Did You Get The Message?

Head OfficeRegional Office

Partner

BusinessApplication

BusinessApplication

BusinessApplication

BusinessApplication

BusinessApplication

BusinessApplication

BusinessApplication

Regional Office

BusinessApplication

BusinessApplication

BusinessApplication

Cluster

P S

P S

Broker Cluster

P S

P SP S

Global Distribution and Federation

Brokers, Clusters, Nodes, and DRA

Page 16: SOA-5: Did You Get The Message? Giovanni Boschi Director, Sonic Products

© 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 Brokerin terms of messaging

• Messages are automatically routed to all cluster members

Brokers alone or in a cluster canbe 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

P S

Broker Cluster

P S

P SP S

Brokers, Clusters, Nodes, and DRA

Page 17: SOA-5: Did You Get The Message? Giovanni Boschi Director, Sonic Products

© 2008 Progress Software Corporation17 DEV-5: Did You Get The Message?

Headquarters

FAULT TOLERANTSERVER PAIR

PRIMARYSERVER

SECONDARYSERVER

Business

Application

Business

Application

Business

Application

Business

Application

Business

Application

High Availability through Replication

Sonic Continuous Availability Architecture

CLIENTS

P SP S

Message Server

Page 18: SOA-5: Did You Get The Message? Giovanni Boschi Director, Sonic Products

© 2008 Progress Software Corporation18 DEV-5: Did You Get The Message?

HeadquartersBusiness

Application

Business

Application

Business

Application

Business

Application

Scalability through Clustering

Volume and Throughput Scalability within a Domain

Business

Application

Message Server

P SP S

Business

Application

Broker Cluster

P S

P SP S

BusinessApplication

Broker Cluster

P S

P SP S

Page 19: SOA-5: Did You Get The Message? Giovanni Boschi Director, Sonic Products

© 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

P S

P S

Broker Cluster

P S

P SP S

Cluster

Partner

P S

Page 20: SOA-5: Did You Get The Message? Giovanni Boschi Director, Sonic Products

© 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!

Page 21: SOA-5: Did You Get The Message? Giovanni Boschi Director, Sonic Products

© 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.html

• 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”

Page 22: SOA-5: Did You Get The Message? Giovanni Boschi Director, Sonic Products

© 2008 Progress Software Corporation22 DEV-5: Did You Get The Message?

Questions?

Page 23: SOA-5: Did You Get The Message? Giovanni Boschi Director, Sonic Products

© 2008 Progress Software Corporation23 DEV-5: Did You Get The Message?

Thank You

Page 24: SOA-5: Did You Get The Message? Giovanni Boschi Director, Sonic Products

© 2008 Progress Software Corporation24 DEV-5: Did You Get The Message?