Example SOA Patterns
•
Basic principle:
–
n
separate processes better than one
•
Communication:
–
asynchronous
query
–
command
facade
•
Data integration:
–
VETO:
Validation, Enrich, Transform, Operate
–
2
step XRef
–
Forward
Cache
–
Federated
query
1. Asynchronous Query
Pattern
•
Problem: long execution times for
queries
–
due
to Internet
–
due
to distributed systems
•
Solution:
–
de-couple
request/response
–
use
caching of results
2. The VETO Pattern
•
Problem: invoking a service usually
involves:
–
Extract
data, modify, convert format, validate
•
Solution: Separate actions into a 4-action pipeline
•
Actions
–
Validate
(the XML document)
•
Simplifies
data validation for subsequent steps
–
Enrich
•
Adding
value to the data
–
Transform
•
To
a target format
–
Operate
•
Interacts
with the target service
•
Variation:
–
VET(R)O,
where R = Route
3. The 2 Step XRef
Pattern
•
Problem: Integration may involve
–
Content
transformation
–
Structure
transformation
•
Content-level transformation between
source and target can be achieved:
–
By
single, complex process
–
By
two separate processes
•
One
to transform to an abstracted form of target
•
Second
to transform to the specific target
4. Federated Query
Patterns
•
Federated query
–
Multiple
queries on different data sources
•
Cache pushing may not be
appropriate:
–
If
data changes regularly
–
If
out-of-date data is acceptable
•
E.g.,
newsfeeds cached once an hour
•
Queries may take variable amounts of
time
•
Example patterns:
–
Cache
pull (federated query) pattern
–
Long
duration request (federated query) pattern
It's very nice blog,Thanks for sharing
ReplyDeleteOracle SOA Online Training