presentation mom
TRANSCRIPT
-
7/23/2019 Presentation MOM
1/32
Types of Communication
Persistent versus transient
Synchronous versus asynchronous
Discrete versus streaming
-
7/23/2019 Presentation MOM
2/32
Persistent versus Transient
Communication
Persistent: messages are held by the middlewarecomm. service until they can be delivered (e.g. email!" Sender can terminate after e#ecuting send
" $eceiver will get message ne#t time it runs
Transient: messages e#ist only while the sender andreceiver are running" Communication errors or inactive receiver cause the message
to be discarded
" Transport%level communication is transient
-
7/23/2019 Presentation MOM
3/32
&synchronous v Synchronous
Communication
Asynchronous: (non%bloc'ing! sender resumese#ecution as soon as the message is passed to the
communicationmiddleware software
Synchronous: sender is bloc'ed until"
The )S or middleware notifies acceptance of the message or" The message has been delivered to the receiver or
" The receiver processes it * returns a response
-
7/23/2019 Presentation MOM
4/32
Discrete versus Streaming Communication
Discrete: communicating parties e#change discretemessages
Streaming: one%way communication+ a ,session-
consists of multiple messages from the sender that are
related either by send order (TCP streams! temporal
pro#imity (multimedia streams! etc.
-
7/23/2019 Presentation MOM
5/32
Persistence and Synchronicity in Communication
a! Persistent asynchronous communicationb! Persistent synchronous communication
%./
-
7/23/2019 Presentation MOM
6/32
Persistence and Synchronicity in Communication
c! Transient asynchronous communication
d! $eceipt%based transient synchronous communication
%.
-
7/23/2019 Presentation MOM
7/32
Persistence and Synchronicity in Communication
e! Delivery%based transient synchronous communication at message delivery
f! $esponse%based transient synchronous communication
-
7/23/2019 Presentation MOM
8/32
0essage Passing (0P! Systems
1undamentally different approach.
&ll communications primitives are defined in terms
of passing ,messages-.
2nitially 0P systems were ,transient- but these did
not scale wellgeographically.
$ecent emphasis has been on ,persistent- solutions.3
-
7/23/2019 Presentation MOM
9/32
0essaging Channels
Channels are used to transport messages between multiple distributedapplications and can be implemented using 4ueues
& channel can be used concurrently by multiple applications
0essaging channel patterns:
"Point to point"Publish and subscribe
"datatype
-
7/23/2019 Presentation MOM
10/32
Point to Point Channel
5nsures that only one consumer consumes anygiven message
The channel can still have multiple consumers to
consume multiple messages concurrently but only asingle receiver consumes any one message.
-
7/23/2019 Presentation MOM
11/32
Publish and Subscribe Channel
& single input channel that splits into multiple output channels6onefor each subscriber
5ach output channel is configured on one%to%one topology to allowonly one consumer to consume a message.
The event is considered consumed only when all of the consumershave been notified.
-
7/23/2019 Presentation MOM
12/32
DataType Channel
2n any messaging system there are several separate datatypechannelsfor each type of data.
&ll of the messages on a given channel will contain the same type ofdata.
7ased on data type the service provider sends the data to the channeland the consumer receives data from the appropriate datatypechannel.
-
7/23/2019 Presentation MOM
13/32
Soc'et Communication
8sing soc'ets clients and servers can set up a connection%oriented communication session.
Servers e#ecute first four primitives (soc'et bind listenaccept! while clients e#ecute soc'et and connect primitives!
Then the processing is clientwrite serverread serverwriteclientread all close connection.
-
7/23/2019 Presentation MOM
14/32
0essage%)riented Transient Comms.
2nitital efforts relied on the Soc'ets &P2.
9owever DS developers reected Soc'ets:
% ;rong level of abstraction (only ,send- and ,receive-!.
% Too closely coupled to TCP2P networ's " not diverse enough.
/