41
Asynchronous Services - The key to enterprise SOA Johan Eltes Callista Enterprise AB

Asynchronous Services - The key to enterprise SOA Johan Eltes Callista Enterprise AB

Embed Size (px)

Citation preview

Page 1: Asynchronous Services - The key to enterprise SOA Johan Eltes Callista Enterprise AB

Asynchronous Services- The key to enterprise SOA

Johan Eltes

Callista Enterprise AB

Page 2: Asynchronous Services - The key to enterprise SOA Johan Eltes Callista Enterprise AB

CADEC2007, “Asynchronous Services - The key to enterprise SOA”, Slide 2Copyright 2007, Callista Enterprise AB

Agenda

• Why asynchronous services are important

• Asynchronous Message Exchange

• Quality-of-service

• Web-Service technology

• Interoperability of asynchronous web services

• Deploying SOA integrations to an ESB

• Summary

• Q&A

Page 3: Asynchronous Services - The key to enterprise SOA Johan Eltes Callista Enterprise AB

CADEC2007, “Asynchronous Services - The key to enterprise SOA”, Slide 3Copyright 2007, Callista Enterprise AB

Business Processes are asynchronous

act Master Planning Process

Create masterproductionplan

Produce BOM

Request capacities

Create Delivery Forecast

Submit Delivery Forecast

New sales forecast

Why asynchronous services are important

Triggering eventProcess to be orchestrated

Page 4: Asynchronous Services - The key to enterprise SOA Johan Eltes Callista Enterprise AB

CADEC2007, “Asynchronous Services - The key to enterprise SOA”, Slide 4Copyright 2007, Callista Enterprise AB

Enterprise Application Integration

sd EAI

Production PlanningPLM

PLMPartner Gateway

Material Ordering

Partner gateway

Partner Gateway

Material Ordering

Integration 1

Integration 2

Integration 3

Integration 4

Production Plan

«flow»Products

«flow»

BOM

«flow»

Capacity Request

«flow»

Production Capacity

«flow»

Production Capacity

«flow»

Material Forecast

«flow»

Forecast

«flow»

act Process

Get Production Plan

Produce BOM

Request capacities

Create Forecast

Send Forecast

Business process transformed into independent stateless flows: Low visibility of process.

Firewall, Wan

Why asynchronous services are important

Page 5: Asynchronous Services - The key to enterprise SOA Johan Eltes Callista Enterprise AB

CADEC2007, “Asynchronous Services - The key to enterprise SOA”, Slide 5Copyright 2007, Callista Enterprise AB

SOA emerged as layered composition model

Asynchronously triggered processes historically not in focus. SOA was envisioned as layered, application-like

architectures – and thus fragile to operate.

Why asynchronous services are important Animated slide

Page 6: Asynchronous Services - The key to enterprise SOA Johan Eltes Callista Enterprise AB

CADEC2007, “Asynchronous Services - The key to enterprise SOA”, Slide 6Copyright 2007, Callista Enterprise AB

sd SOA

«Service»

Partner Service

receiveDeliveryForecast

requestCapacity

«Service»Forecasting Process

receiveCapacityStatement

submitDeliveryForecast

«Service»

BOM Service

explodeFeatureList

«Legacy Adapter»

Production Planning

«Service»

Alarm Tracking

raiseAlarm

«Service»

Business Optimization

recordEvent

2b

«notification»

4b

«notification»

13

2b,4b

«notification»

2

4

5

SOA based integration

Firewall, Wan

act Process

Get Production Plan

Produce BOM

Request capacities

Create Forecast

Send Forecast

Business process transformed into process orchestration

Why asynchronous services are important

Page 7: Asynchronous Services - The key to enterprise SOA Johan Eltes Callista Enterprise AB

CADEC2007, “Asynchronous Services - The key to enterprise SOA”, Slide 7Copyright 2007, Callista Enterprise AB

sd SOA

«Service»

Partner Service

receiveDeliveryForecast

requestCapacity

«Service»Forecasting Process

receiveCapacityStatement

submitDeliveryForecast

«Service»

BOM Service

explodeFeatureList

«Legacy Adapter»

Production Planning

«Service»

Alarm Tracking

raiseAlarm

«Service»

Business Optimization

recordEvent

2b

«notification»

4b

«notification»

13

2b,4b

«notification»

2

4

5

Asynchronous services: Stateless, batch one-way service invocation

Why asynchronous services are important

Page 8: Asynchronous Services - The key to enterprise SOA Johan Eltes Callista Enterprise AB

CADEC2007, “Asynchronous Services - The key to enterprise SOA”, Slide 8Copyright 2007, Callista Enterprise AB

Synchronous service: Request-repsponse

sd SOA

«Service»

Partner Service

receiveDeliveryForecast

requestCapacity

«Service»Forecasting Process

receiveCapacityStatement

submitDeliveryForecast

«Service»

BOM Service

explodeFeatureList

«Legacy Adapter»

Production Planning

«Service»

Alarm Tracking

raiseAlarm

«Service»

Business Optimization

recordEvent

2b

«notification»

4b

«notification»

13

2b,4b

«notification»

2

4

5

Why asynchronous services are important

Page 9: Asynchronous Services - The key to enterprise SOA Johan Eltes Callista Enterprise AB

CADEC2007, “Asynchronous Services - The key to enterprise SOA”, Slide 9Copyright 2007, Callista Enterprise AB

sd SOA

«Service»

Partner Service

receiveDeliveryForecast

requestCapacity

«Service»Forecasting Process

receiveCapacityStatement

submitDeliveryForecast

«Service»

BOM Service

explodeFeatureList

«Legacy Adapter»

Production Planning

«Service»

Alarm Tracking

raiseAlarm

«Service»

Business Optimization

recordEvent

2b

«notification»

4b

«notification»

13

2b,4b

«notification»

2

4

5

Asynchronous services: Stateful conversation

Why asynchronous services are important

Page 10: Asynchronous Services - The key to enterprise SOA Johan Eltes Callista Enterprise AB

CADEC2007, “Asynchronous Services - The key to enterprise SOA”, Slide 10Copyright 2007, Callista Enterprise AB

Asynchronous services: Event-driven services

sd SOA

«Service»

Partner Service

(from Business Process Model)

forcastMaterial

requestCapacity

«Service»Forecasting Process

receiveCapacityStatement

produceDeliveryForecast

«Service»

BOM Service

explodeFeatureList

«Legacy Adapter»

Production Planning

(from Business Process Model)

«Service»

Alarm Tracking

raiseAlarm

«Service»

Business Optimization

(from Business Process Model)

recordEvent

2b

«notification»

4b

«notification»

1

«OneWay,Reliable»

3

«OneWay,Reliable»

2b,4b

«notification»

2

«ReqRepl»

4 «OneWay,Reliable»

5«OneWay,Reliable»

Why asynchronous services are important

Page 11: Asynchronous Services - The key to enterprise SOA Johan Eltes Callista Enterprise AB

CADEC2007, “Asynchronous Services - The key to enterprise SOA”, Slide 11Copyright 2007, Callista Enterprise AB

Why Asynchronous Services – Summary

• Business-to-Business over the internet

– Asynchronous by nature

– COTS B2B gateways too complex/expensive for smaller businesses (Rosetta net, edifact...)

• Event-driven architectures

– Asynchronous by nature (publish / subscribe)

– Unsolicited events for alarming and business process monitoring

• When (very) loose coupling is required

– Large, synchronous call stacks (”large service depth”) are fragile

– Different operations cycles and uptime requirements may require asynchronous de-coupling

Why asynchronous services are important

Page 12: Asynchronous Services - The key to enterprise SOA Johan Eltes Callista Enterprise AB

CADEC2007, “Asynchronous Services - The key to enterprise SOA”, Slide 12Copyright 2007, Callista Enterprise AB

Asynchronous Message Exchange

• Why asynchronous services are important

• Asynchronous Message Exchange

• Quality-of-service

• Web-Service technology

• Interoperability of asynchronous web services

• Deploying SOA integrations to an ESB

• Summary

• Q&A

Page 13: Asynchronous Services - The key to enterprise SOA Johan Eltes Callista Enterprise AB

CADEC2007, “Asynchronous Services - The key to enterprise SOA”, Slide 13Copyright 2007, Callista Enterprise AB

Asynchronous Message Exchange

• One-way

• Request/Response with callback

• Bi-directional with callback

• Message Correlation

• Stateful Conversations

• Mediation (intermediaries)

Page 14: Asynchronous Services - The key to enterprise SOA Johan Eltes Callista Enterprise AB

CADEC2007, “Asynchronous Services - The key to enterprise SOA”, Slide 14Copyright 2007, Callista Enterprise AB

sd SOA

«Service»

Partner Service

receiveDeliveryForecast

requestCapacity

«Service»Forecasting Process

receiveCapacityStatement

submitDeliveryForecast

«Service»

BOM Service

explodeFeatureList

«Legacy Adapter»

Production Planning

«Service»

Alarm Tracking

raiseAlarm

«Service»

Business Optimization

recordEvent

2b

«notification»

4b

«notification»

One-way

13

2b,4b

«notification»

2

4

5

Asynchronous Message Exchange

Page 15: Asynchronous Services - The key to enterprise SOA Johan Eltes Callista Enterprise AB

CADEC2007, “Asynchronous Services - The key to enterprise SOA”, Slide 15Copyright 2007, Callista Enterprise AB

One-way

Asynchronous Message Exchange

analysis Basic MEPs

Aynchronous Server

Service

Asynchronous Client

reference

processRequest()

• One-way service

– Operation has no response message

Page 16: Asynchronous Services - The key to enterprise SOA Johan Eltes Callista Enterprise AB

CADEC2007, “Asynchronous Services - The key to enterprise SOA”, Slide 16Copyright 2007, Callista Enterprise AB

Request/Response

• Request/Response Service – Operation has response-message

– Response message becomes implicit callback

– Asynchronous use not supported by BPEL

Asynchronous Message Exchange

analysis Basic MEPs

Asynchronous Client

Callback Service

Synchronous ServerService

Synchronous Client

reference

return response

«asynchronous»

processRequest(request) : Response

«asynchronous»

processRequest() : Response

«synchronous»

Page 17: Asynchronous Services - The key to enterprise SOA Johan Eltes Callista Enterprise AB

CADEC2007, “Asynchronous Services - The key to enterprise SOA”, Slide 17Copyright 2007, Callista Enterprise AB

Bi-directional with callback

sd SOA

«Service»

Partner Service

receiveDeliveryForecast

requestCapacity

«Service»Forecasting Process

receiveCapacityStatement

submitDeliveryForecast

«Service»

BOM Service

explodeFeatureList

«Legacy Adapter»

Production Planning

«Service»

Alarm Tracking

raiseAlarm

«Service»

Business Optimization

recordEvent

2b

«notification»

4b

«notification»

13

2b,4b

«notification»

2

4

5

Asynchronous Message Exchange

Page 18: Asynchronous Services - The key to enterprise SOA Johan Eltes Callista Enterprise AB

CADEC2007, “Asynchronous Services - The key to enterprise SOA”, Slide 18Copyright 2007, Callista Enterprise AB

Bi-directional with callback

• Server logic explicitly sends the response through a callback interface

• Tight coupling between service- and callback interfaces

– WS Design best-practice: Server Service + Client callback Service in same WSDL

analysis Business Objects

Aynchronous Server

Service

Callback reference

Asynchronous Client

reference

Callback Service

processRequest()

«asynchronous»

processResponse()

«asynchronous»

Asynchronous Message Exchange

Page 19: Asynchronous Services - The key to enterprise SOA Johan Eltes Callista Enterprise AB

CADEC2007, “Asynchronous Services - The key to enterprise SOA”, Slide 19Copyright 2007, Callista Enterprise AB

Message Correlation

• Request and response of bi-directional message exchanges needs to be correlated

– ...when client is stateless

– Responses will be processed in parallel

– Requests will be processed in parallel

Asynchronous Message Exchange

analysis Correlation

Asynchronous Client

Callback Service

referenceAsynchronous

ServerService

Callback reference

Req3 Req2 Req1

Res1Res2 Res3

processRequest()

Page 20: Asynchronous Services - The key to enterprise SOA Johan Eltes Callista Enterprise AB

CADEC2007, “Asynchronous Services - The key to enterprise SOA”, Slide 20Copyright 2007, Callista Enterprise AB

Message Correlation

sd SOA

«Service»

Partner Service

receiveDeliveryForecast

requestCapacity

«Service»Forecasting Process

receiveCapacityStatement

submitDeliveryForecast

«Service»

BOM Service

explodeFeatureList

«Legacy Adapter»

Production Planning

«Service»

Alarm Tracking

raiseAlarm

«Service»

Business Optimization

recordEvent

2b

«notification»

4b

«notification»

13

2b,4b

«notification»

2

4

5

Asynchronous Message Exchange

Page 21: Asynchronous Services - The key to enterprise SOA Johan Eltes Callista Enterprise AB

CADEC2007, “Asynchronous Services - The key to enterprise SOA”, Slide 21Copyright 2007, Callista Enterprise AB

analysis Correlation

Asynchronous Client

Callback Service

referenceAsynchronous

ServerService

Callback reference

Req3 Req2 Req1

Res1Res2 Res3

processRequest()

Message Correlation – Protocol Support

• Message metadata carries a technical / generated correlation identifier

• Stateless client has to ”remember” association between correlation

identifier and business contextId=mid1

Rel=mid1messageID ”1” -> Forecast ”W0812”

Asynchronous Message Exchange

Page 22: Asynchronous Services - The key to enterprise SOA Johan Eltes Callista Enterprise AB

CADEC2007, “Asynchronous Services - The key to enterprise SOA”, Slide 22Copyright 2007, Callista Enterprise AB

Message Correlation – Application managed

• Requires that request- and response message content share a business identifier

• Stateless client has to ”remember” association between correlation identifier and business

context

• Can not handle parallell callbacks for the same ”business object”

analysis Correlation

Asynchronous Client

callback Service

reference

Asynchronous ServerService

Req3

Req2 Req1

Res1Res2

return response

processRequest()

Forecast ”W0812”

Forecast ”W0812”

Res3

Forecast ”W0812”

Asynchronous Message Exchange

Page 23: Asynchronous Services - The key to enterprise SOA Johan Eltes Callista Enterprise AB

CADEC2007, “Asynchronous Services - The key to enterprise SOA”, Slide 23Copyright 2007, Callista Enterprise AB

Stateful ConversationsTransparent Correlation

sd SOA

«Service»

Partner Service

receiveDeliveryForecast

requestCapacity

«Service»Forecasting Process

receiveCapacityStatement

submitDeliveryForecast

«Service»

BOM Service

explodeFeatureList

«Legacy Adapter»

Production Planning

«Service»

Alarm Tracking

raiseAlarm

«Service»

Business Optimization

recordEvent

2b

«notification»

4b

«notification»

13

2b,4b

«notification»

2

4

5

Firewall, Wan

act Process

Get Production Plan

Produce BOM

Request capacities

Create Forecast

Send Forecast

Asynchronous Message Exchange

Page 24: Asynchronous Services - The key to enterprise SOA Johan Eltes Callista Enterprise AB

CADEC2007, “Asynchronous Services - The key to enterprise SOA”, Slide 24Copyright 2007, Callista Enterprise AB

Stateful ConversationsTransparent Correlation

• Conversations are virtually stateful

– Infrastructure aware of ”Server Instances” (incl. protocol)

– Practically stateless, due to passivation (e.g. in database)

– Can handle parallell callbacks for the same ”business object”

Asynchronous Message Exchange

Asynchronous Server

Service

callback reference

Asynchronous Client

reference

callback Service

Request 1 Instance :Asynchronous Client

callback Service

referenceResponse 1

Instance :Asynchronous Server

Service

callback reference

Request 2 Instance :Asynchronous Client

callback Service

referenceResponse 2

Instance :Asynchronous Server

Service

callback reference

Req2 Req1

Res1Res2

Req1

Res1

Req2

Res2

Conversation state

Page 25: Asynchronous Services - The key to enterprise SOA Johan Eltes Callista Enterprise AB

CADEC2007, “Asynchronous Services - The key to enterprise SOA”, Slide 25Copyright 2007, Callista Enterprise AB

Mediation (intermediaries)

Asynchronous Message Exchange

Asynchronous Server

Service

callback reference

Asynchronous Client

reference

callback Service

• De-coupling of endpoint address from service

• Common in traditional messaging systems

• Foundation for service-oriented message bus

Intermediary

Protocol endpoint: The IntermediaryLogical Endpoint: ”AsynchronousServer”

I know how to translate and route logical address (”AsynchronousServer”) to the ultimate endpoint!

I only know the end point of the intermediary...

Protocol endpoint: ”AsynchronousServer”

Page 26: Asynchronous Services - The key to enterprise SOA Johan Eltes Callista Enterprise AB

CADEC2007, “Asynchronous Services - The key to enterprise SOA”, Slide 26Copyright 2007, Callista Enterprise AB

Asynchronous Message Exchange

• Why asynchronous services are important

• Asynchronous Message Exchange

• Quality-of-service

• Web-Service technology

• Interoperability of asynchronous web services

• Deploying SOA integrations to an ESB

• Summary

• Q&A

Page 27: Asynchronous Services - The key to enterprise SOA Johan Eltes Callista Enterprise AB

CADEC2007, “Asynchronous Services - The key to enterprise SOA”, Slide 27Copyright 2007, Callista Enterprise AB

Quality-of-service

• Typical QoS requirements for asynchronous messaging

– Reliable transmission of messages (requests and responses)

– Secure transmissions (out-of-scope for this presentation)

– Robust error handling

• Reliability requirements for message transmission

– Once and only once

• All messages have to arrive

• Requirements on transmission time

– In order

• arrive in same sequence as produced

• Transaction coordination

– Mainly for mediation activities – depends on underlying messaging system

Page 28: Asynchronous Services - The key to enterprise SOA Johan Eltes Callista Enterprise AB

CADEC2007, “Asynchronous Services - The key to enterprise SOA”, Slide 28Copyright 2007, Callista Enterprise AB

Web-Service technology

• Why asynchronous services are important

• Asynchronous Message Exchange

• Quality-of-service

• Web-Service technology

• Interoperability of asynchronous web services

• Deploying SOA integrations to an ESB

• Summary

• Q&A

Page 29: Asynchronous Services - The key to enterprise SOA Johan Eltes Callista Enterprise AB

CADEC2007, “Asynchronous Services - The key to enterprise SOA”, Slide 29Copyright 2007, Callista Enterprise AB

Web-Service technology

• WS-Addressing

– Foundation for routing. Re-used by other specs in this list

• WS-Reliable Messaging

– Reliable point-to-point transport for web-services

• WS-Notification framework

– Publish / Subscribe model for web-services

• WS-BPEL

– High-level language for synch orchestration of web services.

• Service Component Architecture

– Provides generalized support for stateful synch conversations between service component wires (not only for web-services and not only for Java)

Web-Service technology

Page 30: Asynchronous Services - The key to enterprise SOA Johan Eltes Callista Enterprise AB

CADEC2007, “Asynchronous Services - The key to enterprise SOA”, Slide 30Copyright 2007, Callista Enterprise AB

WS-Addressing: Foundation for routing

Web-Service technology

SOAP Envelope

SOAP Header<wsa:action>there</wsa:action>

<wsa:To>...</wsa:to>

Body

WSDL<wsaw:action>there</wsaw:action>

Runtime Design time

JAX-WS generates code that uses WSDL addressing as default when sending a WS-request.

SOAP Header wsa extensions

- Action: anyURI- MessageID: anyURI- RelatesTo: anyURI

EndpointReferens

- Address: anyURI+To

0..1

+From

0..1

+ReplyTo

0..1

+FaultTo

0..1

Page 31: Asynchronous Services - The key to enterprise SOA Johan Eltes Callista Enterprise AB

CADEC2007, “Asynchronous Services - The key to enterprise SOA”, Slide 31Copyright 2007, Callista Enterprise AB

WS-ReliableMessaging

• SOAP extension for reliable transmissions of SOAP messages

• Supports any protocol with SOAP binding (HTTP, SMTP etc)

• Features

– Handshaking

– Re-send of lost transmissions

– Preserve message sequence

– WSDL integration through WS-Policy

Web-Service technology

Page 32: Asynchronous Services - The key to enterprise SOA Johan Eltes Callista Enterprise AB

CADEC2007, “Asynchronous Services - The key to enterprise SOA”, Slide 32Copyright 2007, Callista Enterprise AB

WSBPEL

Web-Service technology

• XML-based language designed for

service-based integration in a process-

centric way

• Does not support asynchronous

Req/Response

• Built-in support for application-level

message correlation

• Support for Stateful Conversations

Request 1 Instance :Asynchronous Client

Call-back Service

referenceResponse 1

Instance :Asynchronous Server

Service

Call-back reference

Request 2 Instance :Asynchronous Client

Call-back Service

referenceResponse 2

Instance :Asynchronous Server

Service

Call-back reference

Req1

Res1

Req2

Res2

Conversation state

Request 1 Instance :Asynchronous Client

Call-back Service

referenceResponse 1

Instance :Asynchronous Server

Service

Call-back reference

Request 2 Instance :Asynchronous Client

Call-back Service

referenceResponse 2

Instance :Asynchronous Server

Service

Call-back reference

Req1

Res1

Req2

Res2

Process state

BPELService

Page 33: Asynchronous Services - The key to enterprise SOA Johan Eltes Callista Enterprise AB

CADEC2007, “Asynchronous Services - The key to enterprise SOA”, Slide 33Copyright 2007, Callista Enterprise AB

Summary: WS-* support for asynchronous SOA

Web-Service technology

• All message exchange patterns except re-use of synchronous services

– BPEL restriction

• Separation of transport address and logical address through ”intelligent messages” (WS-Addressing)

• Support for un-reliable SOAP transports (WS-ReliableMessaging)

• Support for message sequence and re-send (WS-ReliableMessaging)

• Dedicated language (BPEL) for orchestration of business processes

Page 34: Asynchronous Services - The key to enterprise SOA Johan Eltes Callista Enterprise AB

CADEC2007, “Asynchronous Services - The key to enterprise SOA”, Slide 34Copyright 2007, Callista Enterprise AB

Interoperability of asynchronous web services

• Why asynchronous services are important

• Asynchronous Message Exchange

• Quality-of-service

• Web-Service technology

• Interoperability of asynchronous web services

• Deploying SOA integrations to an ESB

• Summary

• Q&A

Page 35: Asynchronous Services - The key to enterprise SOA Johan Eltes Callista Enterprise AB

CADEC2007, “Asynchronous Services - The key to enterprise SOA”, Slide 35Copyright 2007, Callista Enterprise AB

Interoperability of asynchronous web services

• WebService-Interoperability is now focusing on messaging aspects of web-service standards

WS-I Basic Profile 1.2

WS-I Basic Profile 2.0

WS-I Basic Security Profile 1.0

WS-I Basic Security Profile 1.1

WS-ReliableMessaging 1.1

WS-SecureConversation 1.3

Reliable Secure Profile 1.0

WS-Addressing 1.0 Core

WS-Addressing 1.0 SOAP Binding

WS-Addressing 1.0 WSDL Binding

SOAP 1.1 Binding for MTOM 1.0

Page 36: Asynchronous Services - The key to enterprise SOA Johan Eltes Callista Enterprise AB

CADEC2007, “Asynchronous Services - The key to enterprise SOA”, Slide 36Copyright 2007, Callista Enterprise AB

Deploying SOA integrations to an ESB

• Why asynchronous services are important

• Asynchronous Message Exchange

• Quality-of-service

• Web-Service technology

• Interoperability of asynchronous web services

• Deploying SOA integrations to an ESB

• Summary

• Q&A

Page 37: Asynchronous Services - The key to enterprise SOA Johan Eltes Callista Enterprise AB

CADEC2007, “Asynchronous Services - The key to enterprise SOA”, Slide 37Copyright 2007, Callista Enterprise AB

Deploying SOA integrations to an ESB

Webservice-based message bus (routing of SOAP messages)

configured routing rules

UDDI directory

BPEL engine

Forecasting Process Process X

Java EE engine

BOM Service AlarmTracking Service

BusOpt Service

Message Mapping engine

PP Fixed-to-xml service

Other mapping

JMS Binding Components

A JMS binding

Legacy Prod Planning

WebSphere MQ

Partner Service

1

1 22 2b 2b3

3 4 5

4 4b 4b

11 1

ESB

Business Event

wsa:Action -> wsa:Address

Page 38: Asynchronous Services - The key to enterprise SOA Johan Eltes Callista Enterprise AB

CADEC2007, “Asynchronous Services - The key to enterprise SOA”, Slide 38Copyright 2007, Callista Enterprise AB

Tracing a message exchange

Webservice-based message bus (routing of SOAP messages)

configured routing rules

UDDI directory

BPEL engine

Forecasting Process Process X

Java EE engine

BOM Service AlarmTracking Service

BusOpt Service

Message Mapping engine

PP Fixed-to-xml service

Other mapping

JMS Binding Components

A JMS binding

Legacy Prod Planning

WebSphere MQ

Partner Service

1.0

1.4

1.11.2 1.3

ESB

Deploying SOA integrations to an ESB

Page 39: Asynchronous Services - The key to enterprise SOA Johan Eltes Callista Enterprise AB

CADEC2007, “Asynchronous Services - The key to enterprise SOA”, Slide 39Copyright 2007, Callista Enterprise AB

Summary

• Why asynchronous services are important

• Asynchronous Message Exchange

• Quality-of-service

• Web-Service technology

• Interoperability of asynchronous web services

• Deploying SOA integrations to an ESB

• Summary

• Q&A

Page 40: Asynchronous Services - The key to enterprise SOA Johan Eltes Callista Enterprise AB

CADEC2007, “Asynchronous Services - The key to enterprise SOA”, Slide 40Copyright 2007, Callista Enterprise AB

Summary

act Master Planning Process

Create masterproductionplan

Produce BOM

Request capacities

Create Delivery Forecast

Submit Delivery Forecast

New sales

forecast

sd SOA

«Service»

Partner Service

receiveDeliveryForecast

requestCapacity

«Service»Forecasting Process

receiveCapacityStatement

submitDeliveryForecast

«Service»

BOM Service

explodeFeatureList

«Legacy Adapter»

Production Planning

«Service»

Alarm Tracking

raiseAlarm

«Service»

Business Optimization

recordEvent

2b

«notification»

4b

«notification»

13

2b,4b

«notification»

2

4

5

Webservice-based message bus (routing of SOAP messages)

configured routing rules

Uddi directory

BPEL engine

Forecasting Process Process X

Java EE engine

BOM Service AlarmTracking Service

BusOpt Service

Message Mapping engine

PP Fixed-to-xml service

Other mapping

JMS Binding Components

A JMS binding

Legacy Prod Planning

WebSphere MQ

Partner Service

1.0

1.4

1.11.2 1.3

ESB

Business Event

Webservice-based message bus (routing of SOAP messages)

configured routing rules

Uddi directory

BPEL engine

Forecasting Process Process X

Java EE engine

BOM Service AlarmTracking Service

BusOpt Service

Message Mapping engine

PP Fixed-to-xml service

Other mapping

JMS Binding Components

A JMS binding

Legacy Prod Planning

WebSphere MQ

Partner Service

1.01.0

1.41.4

1.11.11.21.2 1.31.3

ESB

Business Event

- SOA is a powerful architecture for business process integration

- Asynchronous message exchange patterns are essential

-Services needs to be designed for asynchronous process orchestration

- Use the ESB as a model when implementing a service-oriented runtime

Business

model

SOA model

Deployment m

odel

Page 41: Asynchronous Services - The key to enterprise SOA Johan Eltes Callista Enterprise AB

CADEC2007, “Asynchronous Services - The key to enterprise SOA”, Slide 41Copyright 2007, Callista Enterprise AB

Q & A