Transcript Document

BPEL in Grids
Aleksander Slomiski
Department of Computer Science
Indiana University
Indiana University Extreme! Lab
• Collaxa
• OpenStorm, SeeBeyond, IBM, BEA,
• BPEL standardization
• BPEL formal models
• BPEL in Grids: Goals
• Feedback
Indiana University Extreme! Lab
• IBM AlphaWorks
• Technology demonstration
– Released on the day first BPEL spec was published
– Not persistent or designed for long running workflows
• Very popular
– People do amazing things to make it work
– Active forums
• Closed source 
Indiana University Extreme! Lab
• First commercial implementation
• Commercial product with paid support etc.
• Very good documentation, tutorials, …
• Commercial product 
– 30-days trial version (Registration required!)
– Costs a lot (impossible to find price list …)
Indiana University Extreme! Lab
More is coming …
• OpenStorm
– Service Orchestrator (J2EE, .NET)
– “fully compliant with the OASIS BPEL4WS 1.1 specification”
• SeeBeyond
– eInsight™ Business Process Manager 5.0
• Open Engine for BPM, Workflows and Web Services Orchestration
• “limited edition version” i.e. not available …
• Microsoft
– Microsoft BizTalk 2004 (Evaluation version available soon?)
– To be released in April (“gold” version)
– Future WebSphere …
• …
Indiana University Extreme! Lab
What is Next?
• OASIS TC working on BPEL standard
– The biggest TC in OASIS …
– Expected soon? (ETA: Autumn 2004)
– Should clear licensing issues …
• Independent groups working on BPEL
formal models
– Very valuable to validate BPEL
• Use of BPEL in Grids?
• BPEL Open Source Implementation?
Indiana University Extreme! Lab
Use Of BPEL in Grids
• Two possible approaches
• Short term (good enough?)
– No extensions to BPEL but use the fact that
deployment is not part of BPEL
– Easier for WS-RF and harder for OGSI
– Can interoperate with “vanilla” Web Services
• Long term
– Create BPEL profiles (standards!) to have support for
grid monitoring, lifecycle, ...
– Such “extended” BPEL workflows will require special
• More details: see GGF10 Workshop materials at
Indiana University Extreme! Lab
Indiana University
Extreme! Lab
• Grid Process Execution Language
– Striving to meet requirements of CheaPEL 
• Prototype Implementation
• Subset of BPEL (Limited resources …)
– Can be extended to full BPEL support
• Open Source
– Depending on community interest …
Indiana University Extreme! Lab
Deployed Workflow
Messaging Service
(Send Messages,
Receive Messages)
Correlation Service
Machine State
(XML based State Machine
(Saved Machine States,
Indiana University Extreme! Lab
Implementation Strategy
• Based on WS/XML Services Utility Library
– Built to take advantage of XML Infoset
– Provides XML/HTTP/SOAP/XmlDSig/SAML/…
• Each Workflow Instance is Automata
– Instance State is XML
• State: <variables, threads, active correlations, …>
• Easy to observer and manipulate with XML tools
– Can process any XML: no XML<->Java trips
– Workflow execution history is also accessible
Indiana University Extreme! Lab
XML And Automata Flexibility
• XML in, XML out, XML inside
• Discovery/Experimentation Support
– Unlimited Undo
– Cloning/Branching (Duplicate XML Documents)
• Sharing
– Send XML documents with workflow instance state
• State exposed as WSRF Properties
– Subset of XML state already maintained in engine!
– Previously OGSI SDEs …
Indiana University Extreme! Lab
GPEL as Workflow VM
• State exposed as XML
• Step-by-step execution
• Direct manipulation of state
– Support exploratory what-if execution mode
– Allow to “clone” and “undo” execution
• Per-instance modifications of workflow
– Instance specific for “ad hoc” errors handling
Indiana University Extreme! Lab
GPEL: Grid support
• OGSI: phased out …
– GSH/GSR Locators
– Factories and Lifecycle
– Workflow identities and SDEs
• WSRF: in progress
• WS-Addressing
– Workflow Instance identification
• WS-Resource properties
• WS-Notification
Indiana University Extreme! Lab
Synchronous vs. Asynchronous
• <receive/>  <reply/>
– Typical binding is SOAP/HTTP
• Use WS-Addressing <ws:ReplyTo/>
– User can specify its return address!!!
– Receive connection can be one and closed!
– Reply can be executed
Indiana University Extreme! Lab
Workflow Reliability
• Use WS-ReliableMessaging
– WS-RM enabled Workflow endpoint
– Invoking external services with WS-RM
– What if workflow engine is restarted?
• Allow to annotate partners
– Designate operations as idempotent
– Allow to specify exponential back-off retries
Indiana University Extreme! Lab
• If there is enough interest in “BPEL in
– Mailing list and WikiWiki could be started …
• If you are interested in playing with
– Contact me!
(Aleksander Slominski)
• Thanks!