1. soa design pattern introduction

Post on 13-Apr-2017

12 Views

Category:

Technology

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Principles OF

SOA From knowledge To practice

SUBMITTED BY : MOHAMED ZAKARYA

AGENDA

Enterprise service bus

Service broker Data model transformation Data format transformation Protocol bridging

Intermediate routing

Asynchronous queuing

SERVICE ORIENTATION PRINCIPLES

Standardized Service

Contract

ServiceReusability

ServiceComposability

ServiceAutonomy

Service Loose

Coupling

Service Statelessness

ServiceAbstraction

ServiceDiscoverability

PART 1

SOADESIGN PATTERN

INTRODUCTION

ENTERPRISE SERVICE BUS

Intermediate layer of processing Environment designed to include any interconnectivity between services

Compound Pattern

ENTERPRISE SERVICE BUS

SERVICE BROKER

Common part of middleware platforms, providing multifaceted runtime conversion features that enable integration between disparate systems.

Added bonus of being able to perform more than one transformation function at same time.

Broker-related features are a fundamental part of ESB platforms

1. DATA MODEL TRANSFORMATION - PROFILE

ProblemServices may use incompatible schemas to represent same data, prevent service interaction and composition

SolutionA data transformation technology can be used to convert data between various schema structures

impacts

ApplicationMapping logic needs to be developed and deployed

ProfileHow can services interoperate when using different data models for the same type of data?

Runtime performance overhead Development effort Design complexity

Standardized service contract Reduce data transformation

1. DATA MODEL TRANSFORMATION - SAMPLE

2. DATA FORMAT TRANSFORMATION - PROFILE

ProblemProblem A service may be incompatible with resources it needs to access due to data format disparity ( service consumer may use different format , incompatible )

SolutionIntermediary data format transformation logic needs to be introduced

impacts

ApplicationAdd dedicated transformation service.

ProfileHow can services interact with programs that communicate with different data formats?

Runtime performance overhead Development effort Design complexity

2. DATA FORMAT TRANSFORMATION - SAMPLE

3. PROTOCOL BRIDGING - PROFILE

ProblemServices using different communication protocols or different versions of the same protocol cannot exchange data.

SolutionBridging logic is introduced to enable communication between different communication protocolsBy dynamic conversion between protocols at runtime

impacts

Applicationconsumer programs and services connect to a broker that provide bridging protocol

ProfileHow can a service exchange data with consumers that use different communication protocols?

Performance overhead

3. PROTOCOL BRIDGING- SAMPLE

4. INTERMEDIATE ROUTING- PROFILE

ProblemThe larger and more complex a service composition is, the more difficult it is to anticipate and design for all possible runtime scenarios especially in asynchronous , messages-based.

SolutionMessage paths can be dynamically determined through the use of intermediary routing logic

impacts

ApplicationIntermediate routing logic used to create message paths based on message content or runtime factors

ProfileHow can dynamic runtime factors affect the path of a message?

Performance overhead overly complex service activities.

4. INTERMEDIATE ROUTING- SAMPLE

4. INTERMEDIATE ROUTING- SAMPLE

4. INTERMEDIATE ROUTING- SAMPLE

5. ASYNCHRONOUS QUEUING - PROFILE

ProblemWhen a service capability requires that consumers interact with it synchronously, it can inhibit performance and reliability

SolutionA service can exchange messages with its consumers via an intermediary buffer(remaining temporally decoupled)

impacts

ApplicationQueuing technology needs to be incorporated into the surrounding architecture

ProfileHow can a service and its consumers accommodate isolated failures and avoid unnecessarily locking resources?

There may be no acknowledgement of successful message delivery,

5. ASYNCHRONOUS QUEUING - SAMPLE

5. ASYNCHRONOUS QUEUING - SAMPLE

5. ASYNCHRONOUS QUEUING - SAMPLE

5. ASYNCHRONOUS QUEUING - SAMPLE

REFERENCES

http://www.soaschool.com/

http://serviceorientation.com/index.php/soaglossary/index

http://soapatterns.org/

http://www.servicetechmag.com/

http://www.soaschool.com/certifications

http://www.servicetechbooks.com/

ANY QUESTIONS

THANKSENJOY SOA .. WAIT FOR NEXT

MAIL: ENG.MOHAMEDZAKARYA@GMAIL.COM

top related