Transcript Document
BPEL in Grids
Aleksander Slomiski
Department of Computer Science
Indiana University
www.extreme.indiana.edu
Indiana University Extreme! Lab
Overview
• BPWS4J
• Collaxa
• OpenStorm, SeeBeyond, IBM, BEA,
Microsoft,…
• BPEL standardization
• BPEL formal models
• BPEL in Grids: Goals
• Feedback
Indiana University Extreme! Lab
BPWS4J
• IBM AlphaWorks
– http://www.alphaworks.ibm.com/tech/bpws4j
• 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
Collaxa
• First commercial implementation
• Commercial product with paid support etc.
– http://www.collaxa.com/
• 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 http://www.openstorm.com/
– Service Orchestrator (J2EE, .NET)
– “fully compliant with the OASIS BPEL4WS 1.1 specification”
• SeeBeyond http://www.seebeyond.com/
– eInsight™ Business Process Manager 5.0
• Open Engine for BPM, Workflows and Web Services Orchestration
• “limited edition version” i.e. not available …
• Microsoft http://www.microsoft.com/biztalk
– Microsoft BizTalk 2004 (Evaluation version available soon?)
– To be released in April (“gold” version)
• http://www.pcpro.co.uk/news/news_story.php?id=54450
• IBM
– Future WebSphere …
• BEA
• …
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
runtime
• More details: see GGF10 Workshop materials at
http://www.extreme.indiana.edu/groc/ggf10-ww/
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
Overview
Deployed Workflow
Engine
Messaging Service
(Send Messages,
Receive Messages)
Correlation Service
XML
Machine State
StateMachine
Machine
(XML based State Machine
Database
(Saved Machine States,
History)
Indiana University Extreme! Lab
Implementation Strategy
• Based on WS/XML Services Utility Library
– Built to take advantage of XML Infoset
abstraction
– 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
structure
– 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
Feedback
• If there is enough interest in “BPEL in
Grids”?
– Mailing list and WikiWiki could be started …
• If you are interested in playing with
prototype
– Contact me!
– www.extreme.indiana.edu/~aslom
(Aleksander Slominski)
• Thanks!