Corporate PPT Template - AMIS Oracle and Java Blog

Download Report

Transcript Corporate PPT Template - AMIS Oracle and Java Blog

"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
GPRS Activation Manager
China Roaming Activation Manager
Application
Server
Automatic Payment Approval
New Plan Selection
User Interface
Service Not Available Exception
ADF
Orchestration
Billing Services
Payment Services
Credit Card Payment Services
Java + JCA + JMS + EAI = “Not Enough”
Java Services (EJB)
Messaging Destinations (JMS)
Legacy Applications (JCA, adapters)
Portal
Orchestration Today
Java Platform
User Tasks
ADF
?
Not enough metadata
 Not tool friendly
Orchestration
Proprietary flow languages
Web Services
andskill
Async)sets, consulting
(Sync
Rare
Hard Wired/Code
 Rigid, difficult to change
Incompatible Infrastructures
 Difficult to manage and scale
SOA
Oracle IBM Microsoft BEA Tibco SAP Sun
A Service…
XML
Metadata
<rate>
5.6%
</rate>
GetCustomerInfo
GetReport
ListProducts
Search
CreditAccount
ProcessOrder
Network Centric
…Can Be Asynchronous
WS-Addressing
Correlation
Callback Location
10:05 Receive Order
10:10 Processing
….
10:25 <risk>4</risk>
Performance
Reliability
Business Time
…Can Be Secured
WS-Security, SAML
Signature
Encryption
Role and Access Control
<Patient>
Disease A
</Patient>
…Can Offer Optimized Bindings
WSDL
INTERFACE
HTTP
.NET, Axis Service
BINDING
RMI
Java Service
BINDING
JDBC
Database
Stored Procedures
BINDING
JCA
ERP
BPEL, The Orchestrator
Web Service
PORTAL
Java Service
?
J2EE
Database
Stored Procedures
ERP
SAP, Oracle, etc.
BPEL
TOMCAT
IU
User Tasks
What is BPEL?
Markup language for composing a set of discrete services into
an end-to-end process flow
SalesDB
start
• 10+ years of R&D from
Duplicate
Number!
MSFT and IBM
• SOAP but also Java, JCA
• Rich Flow Semantics
Billing
• Optimized Bindings
• XPATH+XSLT+XQuery
• WS-Security
Router
• A Process is a Service
end
BPEL by Example (1)
<sequence>
Client
Start
<receive>
GetAccount
<invoke>
Customer App
mapping
ListIncidents
<invoke>
Client
End
<reply>
</sequence>
Example: Chaining
Support DB
BPEL by Example (2)
Client
Initiate
<receive>
ProcessOrder
<invoke>
….
OnOrderComplete
<receive>
Client
Example: Asynchrony
End
<invoke>
Computer
Store
BPEL by Example (3)
Initiate
<receive>
<flow>
GetQuote
GetQuote
<invoke>
<invoke>
Partner B
Partner A
</flow>
End
<invoke>
Example: Parallelism
BPEL by Example (4)
Client
Start
<receive>
Release Flight
<invoke>
Book Flight
<invoke>
Travel Service
Cancel Hotel
<invoke>
Reserve Hotel
<invoke>
Hotel Service
Client
End
<reply>
Example: Exception Management and Compensation
BPEL by Example (5)
Start
<receive>
…
GetRating
<invoke>
…
End
<reply>
Example: WSIF and Java Binding
RMI
Rating
SessionBean
BPEL by Example (6)
Client
Java
Web App
BPEL
C#
Initiate
<receive>
ProcessOrder
<invoke>
….
OnOrderComplete
<receive>
End
<invoke>
Example: A Process Is A Service
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.
BPEL Methodology
Expose Services
Flow
Transformation Exception
User Tasks
Change
Unit Test
Monitor
Sensors
Audit
Perf Test
The Top Down Perspective
Business Analyst
Integration Developer
Activity
assign
Activity
invoke
Activity
receive
assign
Notation Layer
BPMN or UML
Executable Layer
XML, XQuery, BPEL, Rules
Business Services
Adapters, Java, Struts, JSF
Service Developer
Existing Systems
DATABASE
PACKAGED
APPLICATIONS
JAVA
MAINFRAME
Oracle BPEL Process Manager
For OracleAS, WebLogic, WebSphere and JBoss
Oracle BPEL Process Manager
Event Correlation, Analytics, Dashboards, Alerts
BPEL
Designer
BAM
BPEL PM
XSLT
Mapper
BPEL
Console
• Orchestration
• Transformation
• Auditing
BPEL Server
Application Server
Security, Management
WS Gateway
Service Adapters
• WSIF/JCA Framework
• 200+ Back Ends
• Rich Metadata
User Tasks
Database
Mainframe
Packaged Apps
EJBs
Eclipse BPEL Designer
KEY FEATURES
• 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
Preview
JDeveloper BPEL Designer
KEY FEATURES
• 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
Preview
XSLT Mapper
KEY FEATURES
• Drag-and-drop Interface
• Built-in Library of Functions
• Support for Lists and Iterations
• Auto-mapping
• Version Resiliency
Preview
Service Adapters
KEY FEATURES
• WSIF + JCA + XML
• Rich Metadata
• Requests and Events
• Optimized Bindings
• 200+ Systems
• Fail Over Management
Preview
Workflow Service
KEY FEATURES
• Routing
• Roles
• Attachments and Version Control
• Built-in Approval Patterns
• Simple Form Framework
• Email and Wireless Notification
• Built-in Worklist Application
BPEL Server
KEY FEATURES
• Plug and Play
BPEL
• Cross Platform
• Massively Scalable
BPEL Process Manager
WSDL Binding
Built-in Integration Services
Web Service
JMS
JCA
XQuery XSLT
User
BPELJ
Tasks
Oracle DB
Oracle Database
Database
Email
Core BPEL Engine
J2EE Application Server
(WebLogic, Oracle AS, JBoss, WebSphere)
MANAGE
BPEL
Console
Need for Performance
Write-through
Cache
BPEL-Optimized
SOAP Stack
BPEL Server
LOAD BALANCER
App. Server
Compact Binary DOM
• Lazy Loading
• Smart Partitioning
• W3C DOM Interface
• Support for Large
Documents
BPEL Server
App. Server
Dehydration Store
(Oracle Database)
Stateless
Architecture
• Clustering
• Fail Over
BPEL Server
App. Server
Support for large BPEL
Processes (20,000+ activities)
Need for Scalability
KEY FEATURES
• Scale on demand
• No code change
• Easy-to-manage
• Intel+Linux Friendly
BPEL Console
KEY FEATURES
• Visual Monitoring
• Auditing
• BPEL Debugging
• In-flight Instance Administration
• Performance Tuning
• Partitioning/Domains
Service Adapters
WSDL
.NET, Axis Web Services
WSDL
Java, JCA Components
KEY FEATURES
• 100% Standard
• Rich Metadata
BPEL
WSDL
Database
• Requests and Events
WSDL
Oracle eBusiness Suite
• Optimized Bindings
WSDL
Files
WSDL
JMS Queue or Topic
WSDL
200+ iWay Adapters
XML,WSIF,JCA
• XSLT, Auto-Mapping
• 200+ Systems
• Fail Over Management
BAM Friendly
KEY FEATURES
• Event Capture
• Correlation
• Metrics and KPI
• Real-time Dashboards
• Alerts
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
BPEL PM
Performance Numbers
Oracle 9i
BPEL PM
Pentium 4, 2.8Ghz, 1GB RAM
Numbers for the European Space Agency Order Processing BPEL Process
INPUT
DOCUMENT
LOAD
TOTAL
PROCESSING
TIME
2KB
10KB
25x40 18s
25x40 24s
4.80M
3.60M
25KB
50KB
100KB
500KB
25x40
25x40
25x40
10x20
2.88M
2.16M
1.83M
0.58M
3MB
10MB
10x20 120s
10x20 360s
30s
40s
59s
30s
DAILY
THROUGHPUT
0.15M
0.05M
CPU
USAGE