160 likes | 167 Views
This overview explores the current implementations and challenges of BPEL in Grids, including popular tools like BPWS4J, Collaxa, OpenStorm, SeeBeyond, IBM, BEA, and Microsoft. It also discusses the potential for BPEL standardization and the use of BPEL in Grids.
E N D
BPEL in Grids Aleksander Slomiski Department of Computer Science Indiana University www.extreme.indiana.edu
Overview • BPWS4J • Collaxa • OpenStorm, SeeBeyond, IBM, BEA, Microsoft,… • BPEL standardization • BPEL formal models • BPEL in Grids: Goals • Feedback
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
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 …)
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 • …
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?
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/
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 …
Overview Engine Deployed Workflow Machine Messaging Service (Send Messages, Receive Messages) Machine State Machine (XML based State Machine XML State Correlation Service Database (Saved Machine States, History)
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
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 …
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
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
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
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
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!