Date post: | 04-Jan-2016 |
Category: |
Documents |
Upload: | louisa-jordan |
View: | 213 times |
Download: | 0 times |
Logosworld SOA City
Elementary Middleware Communication Patterns for a
Successful SOA ImplementationAny complex communication scenario can be efficiently built from a
small number of atomic patterns
Atomic SOA Patterns
Logosworld SOA City
SOA Application Layer Model (non-OSI)• Canonical Content representationContent• HTML, XML, JSON, ASCIIEnvelope• HTTP, FTP, WebDAV, SteganographieTransport• TCP, UDP, IPXDelivery• IPData Linkage• Ethernet, Token-RingNetwork• WLAN, Cable, Sound, File-SystemPhysical
Logosworld SOA City
Canonical Data Transportvon Neumann Paradigm of Computing:Communication as canonical 3-step process Input Process Output
Data exchange within a layer happens always via a Canonical Format.Data exchange between layers is only done through defined gateways. Input Process Output
János von Neumann zu Margitta:Mastermind of modern Computer Architecture
Receive Process Send
Logosworld SOA City
Example: How to copy a file
The quick & dirty approachProcedure CopyFile
• Read the input file• Convert encoding• Save the file
The atomic approach• Procedure readFile
• Read the input file• Procedure convertEncoding
• Convert encoding• Procedure saveFile
• Save the file• Procedure CopyFile
• Call inputFile• Call convertEncoding• Call saveFile
Logosworld SOA City
Physical Format
Transport protocol
HTTP, FTP, FileSys
Transport Envelope
Protocol specific
HTML, JSON, Text
Canonical FormatInternal container format
Data Transport in Envelopes
Logosworld SOA City
Interaction Transport/Data-Layer
Logosworld SOA City
Atomic Patterns
Logosworld SOA City
Sender
Logosworld SOA City
Peer-to-Peer
Message directly from Sender to Receiver
source sink
S RM
Logosworld SOA City
Peer-to-Peer with conversion
Message converted eitherby Sender or Receiver
source sink
S RCM m
source sink
S RCM m
Logosworld SOA City
Message-Broker (Middleware)
Message converted in a message-oriented middleware
broker
source sink
S RC
M m
MoM
Logosworld SOA City
Message-Queue
Buffer message in queue until receiver is ready
source sink
S RC
M mMoM
Q
Logosworld SOA City
Message-Rerouting
Redirect message based on rulese.g. Load balancing, quarantine
source sink
S RC
M
m
MoM
sink 2
RRule
Logosworld SOA City
Message Fan-out
Replicate messages based on rules
e.g. mass email
source Sink 1
S RC
MMoM
sink 2
R
Rule
m
sink 3
R