SOAP vs REST: Comparing a master-slave GA implementation

Embed Size (px)

DESCRIPTION

Presentation for paper at IWDECIE: http://arxiv.org/abs/1106.0118

Citation preview

  • 1. SOAP vs REST: Comparing amaster-slave GA implementation P. A. Castillo, J. L. Bernier, M. G. Arenas,J. J. Merelo , P. Garca-Snchez GeNeura Group University of Granada (Spain) Http://geneura.wordpress.com Http://twitter.com/geneura

2. Web services are the core of Web 2.0 SOAP REST XML-RPC SOA BPEL 3. Why any of them?

  • Web services integrate many business processes. 4. Evolutionary algorithms can be a part of awider service-oriented architecture 5. Optimizationcan be offered alsoas a service

6. Why informal?

  • Web services have been adopted by many communities (e.g. Bioinformatics) 7. Single-program or parallel implementations are still standard. 8. A few papers using SOAP. 9. Very few compare it with other WS.

10. SOAP and REST

  • Simple object access architecture 11. OASIS standard 12. Object oriented access for remote objects 13. Widely implementened
  • Representational State Protocol 14. Interaction style for web services 15. Access remote content using HTTP protocol.

16. SOAP Strengths

  • Handle distributed computing environments 17. Built-in error handling 18. Extensibility 19. Language, platform, and transport agnostic 20. Prevailing standard for web services 21. Support from other standards (WSDL, WS-*)

Weaknesses

  • Verbose 22. Harder to develop, requires tools 23. Conceptually more difficult, moreheavy-weightthan REST

24. REST Strengths

  • Language and platform agnostic 25. Much simpler to develop than SOAP 26. Small learning curve, less reliance on tools 27. Concise, no need for additional messaging layer 28. Closer in design and philosophy to the Web

Weaknesses

  • Assumes a point-to-point communication model 29. Not usable for distributed computing environment 30. Lack of standards support for security, etc. 31. Tied to the HTTP transport model

32. Which one is better for a master/slave implementation of an evolutionary algorithm? 33. How does REST work? 34. Experiments

  • Using Ubuntu 35. Servers/clients written in Perl
    • SOAP::Lite 36. PerlDancer framework for REST
  • Evolutionary Algorithm uses perl AE library Algorithm::Evolutionary

37. Raw performance

  • Sending and receiving text strings

38. Tide function 39. Master/Slave EA implementation 40. REST rules! Different implementations do not have an effect on the evolutionary algorithm, but SOAP can be 50% slower 41. Any question? Thanks.