"SOA en BPEL" Is Service Orchestratie een overdraagbare aandoening? Sandor Nieuwenhuijs

35

description

"SOA en BPEL" Is Service Orchestratie een overdraagbare aandoening? Sandor Nieuwenhuijs. No Application is an Island. Example: Modern Web Application. Application for the provisioning and activation of cell phone plans. Telco Activation Services. SMS Activation Manager. - PowerPoint PPT Presentation

Transcript of "SOA en BPEL" Is Service Orchestratie een overdraagbare aandoening? Sandor Nieuwenhuijs

Page 1: "SOA en BPEL"  Is Service Orchestratie een overdraagbare aandoening? Sandor Nieuwenhuijs
Page 2: "SOA en BPEL"  Is Service Orchestratie een overdraagbare aandoening? Sandor Nieuwenhuijs

"SOA en BPEL" Is Service Orchestratie een

overdraagbare aandoening?

Sandor Nieuwenhuijs

Page 3: "SOA en BPEL"  Is Service Orchestratie een overdraagbare aandoening? Sandor Nieuwenhuijs

No Application is an Island

ADF

Orchestration

Telco Activation Services

SMS Activation Manager

GPRS Activation Manager

China Roaming Activation Manager

Automatic Payment Approval

Service Not Available Exception

Billing Services

Credit Card Payment Services

Payment Services

New Plan SelectionUser Interface

Application Server

Application for the provisioning and activation of cell phone plans

Example: Modern Web Application

Page 4: "SOA en BPEL"  Is Service Orchestratie een overdraagbare aandoening? Sandor Nieuwenhuijs

Java + JCA + JMS + EAI = “Not Enough”

?

Java Platform

Portal

ADF

Java Services (EJB)

Messaging Destinations (JMS)

User Tasks

Web Services (Sync and Async)

Legacy Applications (JCA, adapters)

Orchestration

Orchestration Today

Not enough metadata Not tool friendly

Proprietary flow languages Rare skill sets, consulting

Hard Wired/Code Rigid, difficult to change

Incompatible Infrastructures Difficult to manage and scale

Page 5: "SOA en BPEL"  Is Service Orchestratie een overdraagbare aandoening? Sandor Nieuwenhuijs

SOASOAOracle IBM Microsoft BEA Tibco SAP SunOracle IBM Microsoft BEA Tibco SAP Sun

Page 6: "SOA en BPEL"  Is Service Orchestratie een overdraagbare aandoening? Sandor Nieuwenhuijs

A Service…

<rate>5.6%

</rate>

XML

Network Centric

Metadata

GetCustomerInfoGetReportListProductsSearchCreditAccountProcessOrder

Page 7: "SOA en BPEL"  Is Service Orchestratie een overdraagbare aandoening? Sandor Nieuwenhuijs

…Can Be Asynchronous

10:05 Receive Order10:10 Processing….

10:25 <risk>4</risk> WS-AddressingCorrelationCallback Location

PerformanceReliabilityBusiness Time

Page 8: "SOA en BPEL"  Is Service Orchestratie een overdraagbare aandoening? Sandor Nieuwenhuijs

…Can Be Secured

<Patient>Disease A</Patient>

WS-Security, SAMLSignatureEncryptionRole and Access Control

Page 9: "SOA en BPEL"  Is Service Orchestratie een overdraagbare aandoening? Sandor Nieuwenhuijs

…Can Offer Optimized Bindings

.NET, Axis Service

Java Service

DatabaseStored Procedures

RMI

HTTP

JDBC

BINDING

BINDING

ERPJCA

BINDING

INTERFACE

WSDL

Page 10: "SOA en BPEL"  Is Service Orchestratie een overdraagbare aandoening? Sandor Nieuwenhuijs

?

BPEL, The Orchestrator

BPEL

IU

PORTAL

J2EE

TOMCAT

Web Service

Java Service

ERPSAP, Oracle, etc.

User Tasks

DatabaseStored Procedures

Page 11: "SOA en BPEL"  Is Service Orchestratie een overdraagbare aandoening? Sandor Nieuwenhuijs

What is BPEL?

Duplicate Number!

SalesDB start

end

Router

Billing

Markup language for composing a set of discrete services into

an end-to-end process flow

• 10+ years of R&D from MSFT and IBM

• SOAP but also Java, JCA

• Rich Flow Semantics

• Optimized Bindings

• XPATH+XSLT+XQuery

• WS-Security

• A Process is a Service

Page 12: "SOA en BPEL"  Is Service Orchestratie een overdraagbare aandoening? Sandor Nieuwenhuijs

BPEL by Example (1)

Example: Chaining

Start<receive>

Customer App

Support DB

Client

Client

GetAccount<invoke>

ListIncidents<invoke>

End<reply>

mapping

<sequence>

</sequence>

Page 13: "SOA en BPEL"  Is Service Orchestratie een overdraagbare aandoening? Sandor Nieuwenhuijs

BPEL by Example (2)

Example: Asynchrony

Initiate<receive>

Computer Store

Client

Client

ProcessOrder<invoke>

OnOrderComplete<receive>

End<invoke>

….

Page 14: "SOA en BPEL"  Is Service Orchestratie een overdraagbare aandoening? Sandor Nieuwenhuijs

BPEL by Example (3)

Example: Parallelism

Initiate<receive>

Partner APartner B

GetQuote<invoke>

GetQuote<invoke>

<flow>

End<invoke>

</flow>

Page 15: "SOA en BPEL"  Is Service Orchestratie een overdraagbare aandoening? Sandor Nieuwenhuijs

BPEL by Example (4)

Example: Exception Management and Compensation

Start<receive>

Travel Service

Hotel Service

Client

Client

Release Flight<invoke>

Cancel Hotel<invoke>

End<reply>

Reserve Hotel<invoke>

Book Flight<invoke>

Page 16: "SOA en BPEL"  Is Service Orchestratie een overdraagbare aandoening? Sandor Nieuwenhuijs

BPEL by Example (5)

Example: WSIF and Java Binding

RatingSessionBean

Start<receive>

GetRating<invoke>

End<reply>

RMI

Page 17: "SOA en BPEL"  Is Service Orchestratie een overdraagbare aandoening? Sandor Nieuwenhuijs

BPEL by Example (6)

Example: A Process Is A Service

Initiate<receive>

ClientJavaWeb AppBPELC#

ProcessOrder<invoke>

OnOrderComplete<receive>

End<invoke>

….

Page 18: "SOA en BPEL"  Is Service Orchestratie een overdraagbare aandoening? Sandor Nieuwenhuijs

The Buzz

Gartner believes that BPEL will emerge as the leading

industry standard for Web service orchestration

and coordination of business processes.

- David Smith, Research Vice President and fellow, Gartner ”

BPEL is the future of the integration space.

- John Rymer, Vice President, Forrester Research, Inc.

“ ”

Page 19: "SOA en BPEL"  Is Service Orchestratie een overdraagbare aandoening? Sandor Nieuwenhuijs

BPEL Methodology

Expose Services Flow Exception

User Tasks

Unit Test

Perf TestAuditSensorsMonitor

Change

Transformation

Page 20: "SOA en BPEL"  Is Service Orchestratie een overdraagbare aandoening? Sandor Nieuwenhuijs

The Top Down Perspective

Business Analyst

Integration Developer

Notation LayerBPMN or UML

Executable LayerXML, XQuery, BPEL, Rules

Service Developer

Business ServicesAdapters, Java, Struts, JSF

Existing Systems

MAINFRAMEPACKAGEDAPPLICATIONS

JAVADATABASE

Activity Activity Activity

assign invoke receive assign

Page 21: "SOA en BPEL"  Is Service Orchestratie een overdraagbare aandoening? Sandor Nieuwenhuijs

Oracle BPEL Process Manager

For OracleAS, WebLogic, WebSphere and JBoss

Oracle BPEL Process Manager

For OracleAS, WebLogic, WebSphere and JBoss

Page 22: "SOA en BPEL"  Is Service Orchestratie een overdraagbare aandoening? Sandor Nieuwenhuijs

Application Server

Oracle BPEL Process Manager

Database Mainframe Packaged Apps EJBsUser Tasks

BPEL PM• Orchestration• Transformation• Auditing

Service Adapters• WSIF/JCA Framework• 200+ Back Ends• Rich Metadata

Event Correlation, Analytics, Dashboards, Alerts BAM

Security, Management WS Gateway

BPEL Server

BPEL Designer

BPEL Console

XSLTMapper

Page 23: "SOA en BPEL"  Is Service Orchestratie een overdraagbare aandoening? Sandor Nieuwenhuijs

Eclipse BPEL Designer

• Native BPEL Support

• Drag-and-drop process modeler

• UDDI and WSIL service browser

• Visual XSLT mapper

• Visual XPATH editor

• Visual Assign editor

• One-click build and deploy

KEY FEATURES

Page 24: "SOA en BPEL"  Is Service Orchestratie een overdraagbare aandoening? Sandor Nieuwenhuijs

JDeveloper BPEL Designer

• Native BPEL Support

• Drag-and-drop process modeler

• UDDI and WSIL service browser

• Visual XSLT mapper

• Visual XPATH editor

• Visual Assign editor

• One-click build and deploy

KEY FEATURES

Preview

Page 25: "SOA en BPEL"  Is Service Orchestratie een overdraagbare aandoening? Sandor Nieuwenhuijs

XSLT Mapper

• Drag-and-drop Interface

• Built-in Library of Functions

• Support for Lists and Iterations

• Auto-mapping

• Version Resiliency

KEY FEATURES

Preview

Page 26: "SOA en BPEL"  Is Service Orchestratie een overdraagbare aandoening? Sandor Nieuwenhuijs

Service Adapters

• WSIF + JCA + XML

• Rich Metadata

• Requests and Events

• Optimized Bindings

• 200+ Systems

• Fail Over Management

KEY FEATURES

Preview

Page 27: "SOA en BPEL"  Is Service Orchestratie een overdraagbare aandoening? Sandor Nieuwenhuijs

Workflow Service

• Routing

• Roles

• Attachments and Version Control

• Built-in Approval Patterns

• Simple Form Framework

• Email and Wireless Notification

• Built-in Worklist Application

KEY FEATURES

Preview

Page 28: "SOA en BPEL"  Is Service Orchestratie een overdraagbare aandoening? Sandor Nieuwenhuijs

BPEL Server• Plug and Play

• Cross Platform

• Massively Scalable

BPEL Console

MA

NA

GE

J2EE Application Server(WebLogic, Oracle AS, JBoss, WebSphere)

Core BPEL Engine

WSDL Binding Built-in Integration Services

JCA

Web Service

JMS

Email

XQuery XSLTUser

Tasks Oracle DB

BPEL Process Manager

BPELJOracle Database

Database

BPEL

KEY FEATURES

Page 29: "SOA en BPEL"  Is Service Orchestratie een overdraagbare aandoening? Sandor Nieuwenhuijs

Need for Performance

Dehydration Store(Oracle Database)

App. Server

App. Server

App. Server

Write-through Cache

LOA

D B

ALA

NC

ER

BPEL Server

BPEL Server

BPEL Server

BPEL-OptimizedSOAP Stack

Compact Binary DOM• Lazy Loading• Smart Partitioning• W3C DOM Interface• Support for Large

Documents

Support for large BPEL Processes (20,000+ activities)

Stateless Architecture• Clustering• Fail Over

Page 30: "SOA en BPEL"  Is Service Orchestratie een overdraagbare aandoening? Sandor Nieuwenhuijs

Need for Scalability

• Scale on demand

• No code change

• Easy-to-manage

• Intel+Linux Friendly

KEY FEATURES

Page 31: "SOA en BPEL"  Is Service Orchestratie een overdraagbare aandoening? Sandor Nieuwenhuijs

BPEL Console

• Visual Monitoring

• Auditing

• BPEL Debugging

• In-flight Instance Administration

• Performance Tuning

• Partitioning/Domains

KEY FEATURES

Page 32: "SOA en BPEL"  Is Service Orchestratie een overdraagbare aandoening? Sandor Nieuwenhuijs

Service Adapters

.NET, Axis Web Services

Java, JCA Components

Database

200+ iWay Adapters

JMS Queue or Topic

Oracle eBusiness Suite

XML,WSIF,JCA

WSDL

WSDL

WSDL

WSDL

WSDL

WSDL

• 100% Standard

• Rich Metadata

• Requests and Events

• Optimized Bindings

• XSLT, Auto-Mapping

• 200+ Systems

• Fail Over Management

BPEL

FilesWSDL

KEY FEATURES

Page 33: "SOA en BPEL"  Is Service Orchestratie een overdraagbare aandoening? Sandor Nieuwenhuijs

BAM Friendly

• Event Capture

• Correlation

• Metrics and KPI

• Real-time Dashboards

• Alerts

KEY FEATURES

Page 34: "SOA en BPEL"  Is Service Orchestratie een overdraagbare aandoening? Sandor Nieuwenhuijs

ESA - Satellite Imaging Services

• The Challenge• Provision satellite-imaging services over the Internet• Data from over 30 geospatial partners and resources• Large data sets with complex schemas

• The Solution• Provision, chain, and deliver information via web services and

Oracle BPEL PM

• Why Oracle BPEL Process Manager• Native BPEL, 100% standards compliant

Page 35: "SOA en BPEL"  Is Service Orchestratie een overdraagbare aandoening? Sandor Nieuwenhuijs

Performance NumbersOracle 9i

BPEL PMPentium 4, 2.8Ghz, 1GB RAM

BPEL PM

INPUT DOCUMENT

LOAD TOTAL PROCESSING TIME

DAILY THROUGHPUT

CPU USAGE

2KB 25x40 18s 4.80M

10KB 25x40 24s 3.60M

25KB 25x40 30s 2.88M

50KB 25x40 40s 2.16M

100KB 25x40 59s 1.83M

500KB 10x20 30s 0.58M

3MB 10x20 120s 0.15M

10MB 10x20 360s 0.05M

Numbers for the European Space Agency Order Processing BPEL Process