1. soa design pattern introduction

25
Principles OF SOA From knowledge To practice SUBMITTED BY : MOHAMED ZAKARY

Upload: mohamed-zakarya

Post on 13-Apr-2017

11 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: 1. soa design pattern introduction

Principles OF

SOA From knowledge To practice

SUBMITTED BY : MOHAMED ZAKARYA

Page 2: 1. soa design pattern introduction

AGENDA

Enterprise service bus

Service broker Data model transformation Data format transformation Protocol bridging

Intermediate routing

Asynchronous queuing

Page 3: 1. soa design pattern introduction

SERVICE ORIENTATION PRINCIPLES

Standardized Service

Contract

ServiceReusability

ServiceComposability

ServiceAutonomy

Service Loose

Coupling

Service Statelessness

ServiceAbstraction

ServiceDiscoverability

Page 4: 1. soa design pattern introduction

PART 1

SOADESIGN PATTERN

INTRODUCTION

Page 5: 1. soa design pattern introduction

ENTERPRISE SERVICE BUS

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

Compound Pattern

Page 6: 1. soa design pattern introduction

ENTERPRISE SERVICE BUS

Page 7: 1. soa design pattern introduction

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

Page 8: 1. soa design pattern introduction

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

Page 9: 1. soa design pattern introduction

1. DATA MODEL TRANSFORMATION - SAMPLE

Page 10: 1. soa design pattern introduction

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

Page 11: 1. soa design pattern introduction

2. DATA FORMAT TRANSFORMATION - SAMPLE

Page 12: 1. soa design pattern introduction

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

Page 13: 1. soa design pattern introduction

3. PROTOCOL BRIDGING- SAMPLE

Page 14: 1. soa design pattern introduction

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.

Page 15: 1. soa design pattern introduction

4. INTERMEDIATE ROUTING- SAMPLE

Page 16: 1. soa design pattern introduction

4. INTERMEDIATE ROUTING- SAMPLE

Page 17: 1. soa design pattern introduction

4. INTERMEDIATE ROUTING- SAMPLE

Page 18: 1. soa design pattern introduction

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,

Page 19: 1. soa design pattern introduction

5. ASYNCHRONOUS QUEUING - SAMPLE

Page 20: 1. soa design pattern introduction

5. ASYNCHRONOUS QUEUING - SAMPLE

Page 21: 1. soa design pattern introduction

5. ASYNCHRONOUS QUEUING - SAMPLE

Page 22: 1. soa design pattern introduction

5. ASYNCHRONOUS QUEUING - SAMPLE

Page 23: 1. soa design pattern introduction

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/

Page 24: 1. soa design pattern introduction

ANY QUESTIONS

Page 25: 1. soa design pattern introduction

THANKSENJOY SOA .. WAIT FOR NEXT

MAIL: [email protected]