1 / 10

Asynchronous Activities in SOAP services

Asynchronous Activities in SOAP services. Guy Rixon IVOA Interoperability Meeting Cambridge MA, May 2004. What are Async. Activities?. When a service does something between WSDL operations Client starts activity by calling an operation Operation returns when service accepts the job

kris
Download Presentation

Asynchronous Activities in SOAP services

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Asynchronous Activities in SOAP services Guy Rixon IVOA Interoperability Meeting Cambridge MA, May 2004

  2. What are Async. Activities? • When a service does something between WSDL operations • Client starts activity by calling an operation • Operation returns when service accepts the job • Activity not subject to HTTP timeout • When client can check progress/final status without staying connected to service • Service publishes progress metadata • Client can poll metadata or get notification message • When the activity can restart after service interruption <<title>>

  3. Client Back again. Did I miss much? Client Start query (…) All done now OK Client Keep me posted! Client Oops, gotta close! OK 33% done 66% done Client Client Example with client restart Service <<title>>

  4. Service Service Start query (…) OK All done 33% done. Checkpoint. Service 66% done. Checkpoint. Back again…restart jobs from checkpoints Service Oops, gotta restart! Service Service Example with service checkpointing Client <<title>>

  5. Benefits • Flexibility • Robustness • We already have services that do this • Proven useful • Better with a standard! • Documented protocol • Code reuse • More facilities <<title>>

  6. Proposal • Use WS-ResourceFramework (WS-RF) • It’s what WS-RF is for • Grid (GGF) compatible • Industry support promised • Many OSS implementations in progress • Lightweight standards; own implementation? • Make our own profile where WS-RF is vague • E.g. Define standard metadata for progress notification <<title>>

  7. Factory pattern • Any operation can start an activity • WS-RF doesn’t specify messages to set up context. • No separate “factory service”. • “Resource ID” for activity returned in SOAP header. • Client quotes resource ID in subsequent messages (in SOAP header). <<title>>

  8. WS-ResourceLifetime • Service keeps state metadata of activity + cached results (e.g. MyDB keeps DB tables) • Need to free up resource when job is done • Client controls the resource using ops spec’d in WS-ResourceLifetime: • Delete resource when done • Negotiate timeout • Resource can time out if client abandons it • Deleted by service after timeout. <<title>>

  9. WS-ResourceProperties • Each WSDL port-type can have “resource properties” declared in WSDL • XML metadata structures, schema controlled • Client can poll these with operations spec’d in WS-ResourceProperties. • Suggest defining an IVOA-standard “state of activity” metadata-structure. • Suggest associating “state of activity” structure + polling operations with an “Activity” port-type • Drop-in implementation of this port-type? <<title>>

  10. WS-BaseNotification • Service can send messages to client for significant events in activity • (Provided that client is also a SOAP service) • Protocol defined by WS-BaseNotification • Pushes state data (WS-ResourceProperties) to client • IVOA can define standard notifications • E.g. always notify when job complete or failed. <<title>>

More Related