Changes between Version 1 and Version 2 of AsynchronousServicesFirstDay

Show
Ignore:
Timestamp:
2008/02/12 02:49:27 (11 years ago)
Author:
jmfernandez
Comment:

Some slides were linked, and more text has been added

Legend:

Unmodified
Added
Removed
Modified
  • AsynchronousServicesFirstDay

    v1 v2  
    22 
    33== Asynchronous services, first day (Feb 11th) == 
     4 
     5(NB jmfernandez: although I remember the faces, I do not remember some names of the participants in the initial discussion. Sorry! In those cases I have used three questions '???' as placeholders). 
    46 
    57Initial topics, in their original order, were: 
     
    1618We agreed that main web services paradigms used in bioinformatics are [http://en.wikipedia.org/wiki/REST REST], [http://en.wikipedia.org/wiki/SOAP SOAP]+[http://en.wikipedia.org/wiki/WSDL WSDL], [http://soaplab.sourceforge.net/soaplab1/ SoapLab 1] & [http://soaplab.sourceforge.net/soaplab2/ SoapLab 2], and [http://www.biomoby.org/ BioMOBY]. Meanwhile we were discussing we identified some major service providers which have implemented or want to implement asynchronous services: [http://www.xml.nig.ac.jp/index.html DDBJ WABI], [http://www.pdbj.org/ PDBj], [http://www.ebi.ac.uk/Tools/webservices/services/emboss EBI-EMBOSS] (which uses SoapLab), [http://www.embracegrid.info/page.php?page=home EMBRACE NoE] and [http://bioinf.ncl.ac.uk/instantsoap/ InstantSOAP]. We were quite sure that NCBI provides such services, but we did not have any attending people who came from NCBI which could confirm it. [http://www.inab.org/ INB] has also some [http://www.biomoby.org/ BioMOBY] asynchronous services, but they were not mentioned in that moment. 
    1719 
    18 Then, we were talking about WSRF implementation in BioMOBY, and in general asynchronous models. These topics drove us to the next one (pointed by Matthew):  
     20Then, we were talking about WSRF implementation in BioMOBY, WSRF support in the different languages used in bioinformatics, and in general asynchronous models. José María Fernández explained that [http://www.rcs.manchester.ac.uk/research/wsrflite WSRF::Lite] (the Perl WSRF library) is being maintained, and its maintainers are quite responsive to suggestions and changes. He also told that he was looking six months ago for a Java library implementing last WSRF specifications, but he only found the old, outdated ones, from [http://www.globus.org/toolkit/ Globus Toolkit]. Just ??? pointed out that Apache Foundation has [http://ws.apache.org/muse/ Apache Muse] a project about implementing WSRF in Java, which was developed taking into account last WSRF specifications. 
     21 
     22At last, these topics drove us to the next one (pointed by Matthew): 
    1923 
    2024  * Which asynchronous model is better, a polling mechanism or a callback model? 
     25 
     26José María Fernández showed some slides about asynchronous model and HTTP: 
     27  * [attachment:ticket:1:Asynchronous-Roles-from-Gent.png The roles inside asynchronous models applied to HTTP]. 
     28  * [attachment:ticket:1:True-Asynchronous-Model-from-Gent.png The flow of a true asynchronous, callback model], where the asynchronous client can be actively notified by the service when this last one has finished. 
     29  * And [attachment:ticket:1:Polling-Asynchronous-Model-from-Gent.png a polling mechanism], where the asynchronous client sends status update queries to the server, until the result is prepared or the service has failed. 
     30 
     31??? asked if it would be worth the model followed by some AJAX applications to be able to have an active service notification. This model maintains an open socket sending echo messages to avoid HTTP timeouts, but it was discarded because it was not reliable (once the connection is lost, the client should reconnect to the service, sending the job identifier. Then ??? told us about [http://publib.boulder.ibm.com/infocenter/tivihelp/v2r1/index.jsp?topic=/com.ibm.itame.doc/am60_webseal_admin119.htm a way to send/set job identifier as an HTTP header], so it is an out-of-band parameter (it does not need to be set as an explicit call parameter to the web service).  
     32 
     33In this point, ??? complained about problems like service overloading when polling mechanism is in usage: a client hits too fast the asynchronous service. José María Fernández told that the service could/should optionally provide the polling frequency it likes just when the job identifier is returned. 
     34 
     35We came back to WSRF and BioMOBY. Some of the participants asked about the implementation, its stability in the protocol for future versions, why there is no support for Asynchronous MOBY in Taverna and if there is any service already implemented and working. José María Fernández could explain its experience in this field, because he polished (with the help of José Manuel Rodríguez, INB) the implementation of Asynchronous MOBY previously done by INB. Also, ??? asked about how difficult could be implementing WSRF in Ruby, and ??? complained about BioMOBY services. This last complain was focused on the fact that BioMOBY uses WSRF, which is a [http://www.ws-i.org/ WS-I] standard, but it does not follow other standards like WS Management or WS Addressing. Also, some attenders complained about the fact that BioMOBY does not define an XML Schema for their messages and that any MOBY message itself is packaged as an string, many times encoded with Base64. Eddie Kawas incorporated to the discussion, explaining some of these points to the attenders. Matthew Pocock pointed out that it is easier to develop a client program using SOAP when the XML schema of the messages is available, because messages can be validated and also some toolkits can auto-generate glue code to ease the development steps both in client and service sides. 
     36 
     37We started also talking about throwing away WSRF from our discussion, due it is not so widespread as it was expected a couple of years ago, and replacing it with a custom solution.