Transcript
Page 1: - Oracle · • SOA Today: Drivers for Change • SOA Tomorrow: SOA Grid – State Management in the SOA Grid – Stateful Load Balancing and HA • QoS

1

Page 2: - Oracle · • SOA Today: Drivers for Change • SOA Tomorrow: SOA Grid – State Management in the SOA Grid – Stateful Load Balancing and HA • QoS

<Insert Picture Here>

Next Generation Grid Enabled SOA: Not Your MOM’s Bus

Dave ChappellVP & Chief Technologist, SOA

Page 3: - Oracle · • SOA Today: Drivers for Change • SOA Tomorrow: SOA Grid – State Management in the SOA Grid – Stateful Load Balancing and HA • QoS

3Slide: 3

The following is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into any contract. It is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions.The development, release, and timing of any features or functionality described for Oracle’s products remains at the sole discretion of Oracle.

Page 4: - Oracle · • SOA Today: Drivers for Change • SOA Tomorrow: SOA Grid – State Management in the SOA Grid – Stateful Load Balancing and HA • QoS

4Slide: 4

About the Speaker

Page 5: - Oracle · • SOA Today: Drivers for Change • SOA Tomorrow: SOA Grid – State Management in the SOA Grid – Stateful Load Balancing and HA • QoS

5Slide: 5

Agenda/Outline• SOA Today: Drivers for Change• SOA Tomorrow: SOA Grid

– State Management in the SOA Grid– Stateful Load Balancing and HA

• QoS and Distributed SOA Processing– Not Your MOM’s Bus

• Use Cases – BPEL and ESB Mediation– Claim Check Pattern– Relocatable Stateful Orchestrations (BPEL)

• New Model for Scaling SOA• Summary

Page 6: - Oracle · • SOA Today: Drivers for Change • SOA Tomorrow: SOA Grid – State Management in the SOA Grid – Stateful Load Balancing and HA • QoS

6Slide: 6

SOA Today: Level SettingWhat were we suppose to get from SOA?

Large XML Payloads

Unexpected Usage Demands

Tearing Down / De-coupling

Silos

Sharing InformationAcross Multiple

Services

Meeting SLAExpectations

• IT Management Paradigm Shift– Reduce Cost and Complexity

– Service Enablement of IT Assets– Leverage investment, reuse

• Business Agility– Better align with the Business Needs– Automate Business Function

– Business Process Orchestration– Composite Applications

• Flexibility– Loose Coupling, Modularity– Easily integrated, upgraded, replaced

• Re-Focus on Innovation, New Business Services

Page 7: - Oracle · • SOA Today: Drivers for Change • SOA Tomorrow: SOA Grid – State Management in the SOA Grid – Stateful Load Balancing and HA • QoS

7Slide: 7

Drivers for Change: The Evolving Problem Set50,000 foot view

• SOA Architect: Tearing Down Silos– Reuse of Shared Services– New Flexible Business Processes

• IT Operations: Deployment Complexity– How many configurations of servers?– When and how to add more flavors?

• Cost and Efficiency– Datacenter resource utilization

– Usage typically 13% – 17%– Virtualization only solves part of the problem

Tight Coupling & Contention Between SOA Architect & IT Operations

Page 8: - Oracle · • SOA Today: Drivers for Change • SOA Tomorrow: SOA Grid – State Management in the SOA Grid – Stateful Load Balancing and HA • QoS

8

State Management Techniques in SOA Applications

Service Sophistication,Longevity

Complexity

Stateless

Cookies +ServletSession

State passing viaXML Payloads

Tight Coupling

Service Complexity

Stateful

Hard-wired Shared

Context DB

2 3 4

5

1

Page 9: - Oracle · • SOA Today: Drivers for Change • SOA Tomorrow: SOA Grid – State Management in the SOA Grid – Stateful Load Balancing and HA • QoS

9

Agenda/Outline

• SOA Today: Drivers for Change• SOA Tomorrow: SOA Grid

• State Management in the SOA Grid• Stateful Load Balancing and HA

• QoS and Distributed SOA Processing• Not Your MOM’s Bus

• Use Cases – BPEL and ESB Mediation• Claim Check Pattern• Relocatable Stateful Orchestrations (BPEL)

• New Model for Scaling SOA• Summary

Page 10: - Oracle · • SOA Today: Drivers for Change • SOA Tomorrow: SOA Grid – State Management in the SOA Grid – Stateful Load Balancing and HA • QoS

10

The SOA Grid• State-aware continuous availability for service

infrastructure, application data, and processing logic• Predictable scalability for XTP

• Scales out linearly, whether 2 or 2,000 servers• Heterogeneous Environment• High-end / low-cost commodity hardware

• Data Grid and Compute Grid• Linearly scalable shared memory and logic• Intelligent co-location and affinity between processing logic and

Grid storage

• Dramatic overall increase in performance and throughput• Reduced/Eliminate dependency on disk persistence• Without sacrificing HA

Page 11: - Oracle · • SOA Today: Drivers for Change • SOA Tomorrow: SOA Grid – State Management in the SOA Grid – Stateful Load Balancing and HA • QoS

11

Oracle Coherence CustomersSampling of Customers

100 Direct Customers and 1,500+ production installations

Page 12: - Oracle · • SOA Today: Drivers for Change • SOA Tomorrow: SOA Grid – State Management in the SOA Grid – Stateful Load Balancing and HA • QoS

12

SOA Grid - Primary/Backup synchronization

Application

Application

Application

P

B

Update/Fetch

Ack/Nack

Backup Node

PrimaryNode

Storage-awareDatagrid servers

Non-storage-awareDatagrid clients

Near Cache

Available Today with Oracle Coherence

Page 13: - Oracle · • SOA Today: Drivers for Change • SOA Tomorrow: SOA Grid – State Management in the SOA Grid – Stateful Load Balancing and HA • QoS

13

SOA Grid - Primary/Backup synchronizationStorage-awareDatagrid servers

Non-storage-awareDatagrid clients

Application

Application

Application

P

B

Update/Fetch

Ack/Nack

Backup Node

PrimaryNode

X

Available Today with Oracle Coherence

Page 14: - Oracle · • SOA Today: Drivers for Change • SOA Tomorrow: SOA Grid – State Management in the SOA Grid – Stateful Load Balancing and HA • QoS

14

SOA Grid - Primary/Backup synchronization

Application

Application

Application

P

B

Update/Fetch

Ack/Nack

Backup Node

PrimaryNode

Storage-awareDatagrid servers

Non-storage-awareDatagrid clients

X

Available Today with Oracle Coherence

Page 15: - Oracle · • SOA Today: Drivers for Change • SOA Tomorrow: SOA Grid – State Management in the SOA Grid – Stateful Load Balancing and HA • QoS

15

Asynchronous DB UpdatesStorage-awareDatagrid servers

Non-storage-awareDatagrid clients

Application

Application

Application

P

B

Update/Fetch

Ack/Nack

Backup Node

PrimaryNode

= Write Behind Queue

DB Grid

Available Today with Oracle Coherence

Page 16: - Oracle · • SOA Today: Drivers for Change • SOA Tomorrow: SOA Grid – State Management in the SOA Grid – Stateful Load Balancing and HA • QoS

16

State-Based Notifications

Service

Service

Service

P

B

Update/Put

State Change Notification

Non-storage-awareDatagrid clients

Storage-awareDatagrid servers

DB Grid

Async Notify

ETL

Async Notify

Page 17: - Oracle · • SOA Today: Drivers for Change • SOA Tomorrow: SOA Grid – State Management in the SOA Grid – Stateful Load Balancing and HA • QoS

17

SOA Grid

SOA Grid

P

B

Update/Fetch

Ack/Nack

Backup Node

PrimaryNode

Service

Service

Service

BPEL ProcessESB M

ediation (Transform

, Route)Usage Patterns with Oracle Coherence and ESB/BPEL

Page 18: - Oracle · • SOA Today: Drivers for Change • SOA Tomorrow: SOA Grid – State Management in the SOA Grid – Stateful Load Balancing and HA • QoS

18

Stateful Service load balancing

SOA Grid

P

B

Update/Fetch

Ack/Nack

Backup Node

PrimaryNode

Service A

Service A1

Service ‘A’Invocation

Load Balanced Services

BPEL ProcessESB M

ediation (Transform

, Route)Usage Patterns with Oracle Coherence and ESB/BPEL

Page 19: - Oracle · • SOA Today: Drivers for Change • SOA Tomorrow: SOA Grid – State Management in the SOA Grid – Stateful Load Balancing and HA • QoS

19

Stateful Service load balancing

SOA Grid

P

B

PrimaryNode

Service A

Service A1

Service ‘A1’Invocation

Load Balanced Services

Backup Node

Fetch

BPEL ProcessESB M

ediation (Transform

, Route)Usage Patterns with Oracle Coherence and ESB/BPEL

Page 20: - Oracle · • SOA Today: Drivers for Change • SOA Tomorrow: SOA Grid – State Management in the SOA Grid – Stateful Load Balancing and HA • QoS

20

Stateful Service availability/failover

SOA Grid

P

B

Update/Fetch

Ack/Nack

Backup Node

PrimaryNode

Service A

Service A1

Service ‘A’Invocation

Load Balanced Services

BPEL ProcessESB M

ediation (Transform

, Route)Usage Patterns with Oracle Coherence and ESB/BPEL

Page 21: - Oracle · • SOA Today: Drivers for Change • SOA Tomorrow: SOA Grid – State Management in the SOA Grid – Stateful Load Balancing and HA • QoS

21

Stateful Service availability/failover

SOA Grid

P

B

PrimaryNode

Service A

Service A1

Service ‘A1’Invocation

Load Balanced Services

XBackup

Node

Fetch

BPEL ProcessESB M

ediation (Transform

, Route)Usage Patterns with Oracle Coherence and ESB/BPEL

Page 22: - Oracle · • SOA Today: Drivers for Change • SOA Tomorrow: SOA Grid – State Management in the SOA Grid – Stateful Load Balancing and HA • QoS

22

Agenda/Outline

• SOA Today: Drivers for Change• SOA Tomorrow: SOA Grid

• State Management in the SOA Grid• Stateful Load Balancing and HA

• QoS and Distributed SOA Processing• Not Your MOM’s Bus

• Use Cases – BPEL and ESB Mediation• Claim Check Pattern• Relocatable Stateful Orchestrations (BPEL)

• New Model for Scaling SOA• Summary

Page 23: - Oracle · • SOA Today: Drivers for Change • SOA Tomorrow: SOA Grid – State Management in the SOA Grid – Stateful Load Balancing and HA • QoS

23

SOA Grid – Not Your MOM’s BusConventional Messaging for QoS

Web Service

Consumer

WS-A ddr<ReplyTo> Callback

Portal

BPEL

CRM ERP

CEP RulesWeb Service

Provider

BAM

JMS / MOM / WS-RM Core

Page 24: - Oracle · • SOA Today: Drivers for Change • SOA Tomorrow: SOA Grid – State Management in the SOA Grid – Stateful Load Balancing and HA • QoS

24

SOA Grid – Not Your MOM’s BusWhy send it when its already there?

Portal

BPEL

CRM ERP

CEP Rules

2 3 4

5

1

Web ServiceProvider

BAM

Web Service

Consumer

WS-Addr<ReplyTo> Callback

WS-Addr<ReplyTo> Callback

Page 25: - Oracle · • SOA Today: Drivers for Change • SOA Tomorrow: SOA Grid – State Management in the SOA Grid – Stateful Load Balancing and HA • QoS

25

That Being Said…Still Plenty of Use Cases for Conventional Messaging

Portal

BPEL

CRM ERP

CEP RulesBAM

JMS / WS-RM / EDA

JMS / WS-RM / EDA

Web Service

Consumer

WS-Addr<ReplyTo> Callback

Web ServiceProvider

2 3 4

5

1

WS-Addr<ReplyTo> Callback

Page 26: - Oracle · • SOA Today: Drivers for Change • SOA Tomorrow: SOA Grid – State Management in the SOA Grid – Stateful Load Balancing and HA • QoS

26

Rule of Thumb

• Still need MOM for –• Familiar client API / usage model• Ordering• Pub/Sub

• Avoid putting state in Queues where it doesn’t belong• Avoid “sending” stuff when it doesn’t really have to

travel anywhere• “Subscribe” to state changes in the grid using

observer pattern

Page 27: - Oracle · • SOA Today: Drivers for Change • SOA Tomorrow: SOA Grid – State Management in the SOA Grid – Stateful Load Balancing and HA • QoS

27

Agenda/Outline

• SOA Today: Drivers for Change• SOA Tomorrow: SOA Grid

• State Management in the SOA Grid• Stateful Load Balancing and HA

• QoS and Distributed SOA Processing• Not Your MOM’s Bus

• Use Cases – BPEL and ESB Mediation• Claim Check Pattern• Relocatable Stateful Orchestrations (BPEL)

• New Model for Scaling SOA• Summary

Page 28: - Oracle · • SOA Today: Drivers for Change • SOA Tomorrow: SOA Grid – State Management in the SOA Grid – Stateful Load Balancing and HA • QoS

28

SOA Grid Mediation Use CaseClaim Check / Pass-by-ref Pattern

SOAGrid

DB GridBP

2 3 4

5

1

Portal /Partner

ERP

Mediator

Update

Payload

1

1) Update SOA Grid with payload object using unique correlation Id

4Fetch

4) Event consumer / subscriber fetches payload using reference id

5) Co-located “Fetch Filter” returns partial DOM/SAX

5Filter

3) Async notify state change to DB/ETL

Async NotifyState Changes

3

2) Send SOA Grid payload reference as correlation id via Event

Event <ID>2

ETL

Page 29: - Oracle · • SOA Today: Drivers for Change • SOA Tomorrow: SOA Grid – State Management in the SOA Grid – Stateful Load Balancing and HA • QoS

29

BPEL Dehydration Example

DB GridDB Grid

DB Grid

Service 1

Service 2

BPEL Server 2 Process 1

BPEL Server 1 Process 1

Invoke

Callback

Load

Bal

ance

r

Data Flow1) BPEL Server 1 Process 1 invokes Service 1

setting callback URL to LBR

2) BPEL Server 1 Process 1 dehydrates to Grid

3) Service 1 Invokes LBR

4) LBR invokes BPEL Server 2 Process

5) Server 2 Process 1 rehydrates process data from grid and continues

3

1

2

4

ESB

ESB

SOA Grid

P

B

5

Service 1 and 2 can store their own data in the SOA Grid but they do not

require access to the BPEL dehydration store in this example.

Page 30: - Oracle · • SOA Today: Drivers for Change • SOA Tomorrow: SOA Grid – State Management in the SOA Grid – Stateful Load Balancing and HA • QoS

30

Relocatable BPEL processes

2 3 45

1

SOA Grid

Svc

P

B

Lightweight signal

PB

2 3 45

1

Svc Rehydrate

Dehydrate •Activate/RehydrateBPEL process where the next service resides

•Efficient co-location of Process/Service Logic/Data

•Reduces Hub-and-spoke traffic

Page 31: - Oracle · • SOA Today: Drivers for Change • SOA Tomorrow: SOA Grid – State Management in the SOA Grid – Stateful Load Balancing and HA • QoS

31

Agenda/Outline

• SOA Today: Drivers for Change• SOA Tomorrow: SOA Grid

• State Management in the SOA Grid• Stateful Load Balancing and HA

• QoS and Distributed SOA Processing• Not Your MOM’s Bus

• Use Cases – BPEL and ESB Mediation• Claim Check Pattern• Relocatable Stateful Orchestrations (BPEL)

• New Model for Scaling SOA• Summary

Page 32: - Oracle · • SOA Today: Drivers for Change • SOA Tomorrow: SOA Grid – State Management in the SOA Grid – Stateful Load Balancing and HA • QoS

32

Server UtilizationTypical Virtualization Scenario

CPU Usage

10 %Disk Usage

20 %

Memory Usage

80 %

Server A

CPU Usage

80 %

Memory Usage

10 %

Disk Usage

20 %

Server B

CPU Usage

10 %

Memory Usage

20 %

Server C

Disk Usage

80 %

Memory

…CPU

Disk

Page 33: - Oracle · • SOA Today: Drivers for Change • SOA Tomorrow: SOA Grid – State Management in the SOA Grid – Stateful Load Balancing and HA • QoS

33

Server UtilizationTypical SOA Scalability Scenario

…Disk Usage

90 %

CPU Usage

10 %

Memory Usage

30 %

Server C

Disk Usage

90 %

CPU Usage

10 %

Memory Usage

30 %

Server C

Disk Usage

90 %

CPU Usage

10 %

Memory Usage

30 %

Server C

Disk Usage

90 %

CPU Usage

10 %

Memory Usage

30 %

Server C

ServiceA

Disk Usage

90 %

CPU Usage

10 %

Memory Usage

30 %

Server C

Disk Usage

90 %

CPU Usage

10 %

Memory Usage

30 %

Server C

Disk Usage

90 %

CPU Usage

10 %

Memory Usage

30 %

Server C

Disk Usage

90 %

CPU Usage

10 %

Memory Usage

30 %

Server C

Disk Usage

90 %

CPU Usage

10 %

Memory Usage

30 %

Server C

Disk Usage

90 %

CPU Usage

10 %

Memory Usage

30 %

Server C

Disk Usage

90 %

CPU Usage

10 %

Memory Usage

30 %

Server C

…Service

B

…Disk Usage

90 %

CPU Usage

10 %

Memory Usage

30 %

Server C

Disk Usage

90 %

CPU Usage

10 %

Memory Usage

30 %

Server C

Disk Usage

90 %

CPU Usage

10 %

Memory Usage

30 %

Server C

Disk Usage

90 %

CPU Usage

10 %

Memory Usage

30 %

Server C

Disk Usage

90 %

CPU Usage

10 %

Memory Usage

30 %

Server C

Disk Usage

90 %

CPU Usage

10 %

Memory Usage

30 %

Server C

ServiceC

Page 34: - Oracle · • SOA Today: Drivers for Change • SOA Tomorrow: SOA Grid – State Management in the SOA Grid – Stateful Load Balancing and HA • QoS

34

Server UtilizationSOA Grid

Disk Usage

1 %

Server ZMemory Usage

80 %CPU Usage

80 %

Memory

…CPU

Disk

Page 35: - Oracle · • SOA Today: Drivers for Change • SOA Tomorrow: SOA Grid – State Management in the SOA Grid – Stateful Load Balancing and HA • QoS

35

Server UtilizationSOA Grid

…Memory Usage

50 %

DataMemory Usage

50 %

DataMemory Usage

50 %

DataMemory Utilization(Storage Enabled)

…CPU Usage

50 %

LogicCPU Usage

50 %

LogicCPU Usage

50 %

Logic

CPU Utilization(StorageDisabled)

Memory Usage

50 %CPU Usage

50 %

Logic & DataMemory Usage

50 %CPU Usage

50 %

Logic & DataMemory Usage

50 %CPU Usage

50 %

Logic & Data

…Both

Page 36: - Oracle · • SOA Today: Drivers for Change • SOA Tomorrow: SOA Grid – State Management in the SOA Grid – Stateful Load Balancing and HA • QoS

36

ESBBPEL Process

Service AXSLT

Transformation

Service BApplication Logic

Memory Usage

50 %CPU Usage

50 %

Logic & DataMemory Usage

50 %CPU Usage

50 %

Logic & DataMemory Usage

50 %CPU Usage

50 %

Logic & Data

Scaling SOAA new model for efficient resource utilization

Memory Usage

80 %

DataMemory Usage

80 %

DataMemory Usage

80 %

Data

CPU Usage

80 %

LogicCPU Usage

80 %

LogicCPU Usage

80 %

Logic

Page 37: - Oracle · • SOA Today: Drivers for Change • SOA Tomorrow: SOA Grid – State Management in the SOA Grid – Stateful Load Balancing and HA • QoS

37

The SOA Grid

• State-aware continuous availability• Predictable scalability• Data Grid and Compute Grid• Dramatic overall increase in performance

and throughput• In memory data access speeds

Page 38: - Oracle · • SOA Today: Drivers for Change • SOA Tomorrow: SOA Grid – State Management in the SOA Grid – Stateful Load Balancing and HA • QoS

38

For More Information• Dave Chappell Blog –

• http://blogs.oracle.com/davidchappell• SOA Magazine – SOA – Ready for Primetime: The Next

Generation, Grid Enabled SOA• http://www.soamag.com/I10/0907-1.asp

• XTPP – Gartner Research ID # G00151768 – Massimo Pezzini• Data Grid –

• http://www.oracle.com/products/middleware/coherence/index.html

• General SOA Information –http://www.oracle.com/technologies/soa/index.html

Page 39: - Oracle · • SOA Today: Drivers for Change • SOA Tomorrow: SOA Grid – State Management in the SOA Grid – Stateful Load Balancing and HA • QoS

39

Server UtilizationSOA Grid

…Memory Usage

50 %

DataMemory Usage

50 %

DataMemory Usage

50 %

DataMemory Utilization(Storage Enabled)

…CPU Usage

50 %

LogicCPU Usage

50 %

LogicCPU Usage

50 %

Logic

CPU Utilization(StorageDisabled)

Memory Usage

50 %CPU Usage

50 %

Logic & DataMemory Usage

50 %CPU Usage

50 %

Logic & DataMemory Usage

50 %CPU Usage

50 %

Logic & Data

…Both

Page 40: - Oracle · • SOA Today: Drivers for Change • SOA Tomorrow: SOA Grid – State Management in the SOA Grid – Stateful Load Balancing and HA • QoS

40

Service Component Architecture (SCA)Combine BPEL, BAM, Rules, Custom Logic…

Web Service

Consumer

WS-Addr<ReplyTo> Callback

Portal

BAM ERPCEP

Rules

2 3 4

5

1

Web ServiceProvider

2 3 4

5

1

CRM

WS-Addr<ReplyTo> Callback

SCA Composite

SCA Composite

Page 41: - Oracle · • SOA Today: Drivers for Change • SOA Tomorrow: SOA Grid – State Management in the SOA Grid – Stateful Load Balancing and HA • QoS

41

SOA Grid – Not Your MOM’s BusConventional Messaging for QoS

Web Service

Consumer

WS-A ddr<ReplyTo> Callback

Portal

BPEL

CRM ERP

CEP RulesWeb Service

Provider

BAM

JMS / MOM / WS-RM Core

Page 42: - Oracle · • SOA Today: Drivers for Change • SOA Tomorrow: SOA Grid – State Management in the SOA Grid – Stateful Load Balancing and HA • QoS

42

SOA Grid – Not Your MOM’s BusConventional Messaging for QoS

Web Service

Consumer

WS-A ddr<ReplyTo> Callback

Portal

BPEL

CRM ERP

CEP RulesWeb Service

Provider

BAM

JMS / MOM / WS-RM Core


Top Related