INTEGRATING WEB SERVICES INTO POP-C++ OBJECTS - PowerPoint PPT Presentation

yered
integrating web services into pop c objects n.
Skip this Video
Loading SlideShow in 5 Seconds..
INTEGRATING WEB SERVICES INTO POP-C++ OBJECTS PowerPoint Presentation
Download Presentation
INTEGRATING WEB SERVICES INTO POP-C++ OBJECTS

play fullscreen
1 / 21
Download Presentation
INTEGRATING WEB SERVICES INTO POP-C++ OBJECTS
112 Views
Download Presentation

INTEGRATING WEB SERVICES INTO POP-C++ OBJECTS

- - - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

  1. INTEGRATING WEB SERVICES INTO POP-C++ OBJECTS Thanh-Nguyen Ngo Tuan-Anh Nguyen Tran Van Hoai

  2. Outline • Introduction • POP-C++ overview • Implementation • Experiments • Conclusion • Future works

  3. Introduction • Grid environment is a collection of resources distributed on different locations, owned by different organizations and managed by different policies • Grid computing is the ability to combine resources powers to compute a large-scale problem • Grid programming languages have been adopted to ease users to develop Grid applications

  4. Introduction • Grid programming languages • MPICH-G, MPICH-G2, GAT • POP-C++ • Based on TCP/IP connection • Use their proprietary protocols • Have problems when resources on grid are located at different virtual networks or separated by firewalls

  5. Introduction • POP-C++ • parallel programming system for Grid • extend the C++ programming language • parallel objects • Provide POP-C++ objects a mechanism to choose suitable protocol and message encoding to overcome firewall and virtual network issues when communicating

  6. The previous POP-C++ approach Can not communicate with the remote object when using XDR/socket in the environment having firewall, virtual network

  7. Extended POP-C++ approach Using HTTP can bypass firewall or virtual network (through proxy server)

  8. Communication between POP-C++ objects • combox: determine protocol • buffer: determine encoding server client broker buffer buffer interface add add • Add combox HTTP & buffer SOAP send combox combox object

  9. Communication between POP-C++ objects client server interface add network environment object add buffer soap factory buffer xdrfactory buffer soap factory combox factory combox factory broker buffer_soap combox_http buffer_soap combox_http combox_socket buffer_xdr

  10. Communication between POP-C++ objects • Interface is created on local machine and broker, object are created on remote machine • Broker finds all protocols it supports and creates corresponding comboxes • Each combox asks its buffer factory to create its default buffer • Broker waits to listen all client requests on all comboxes it has created

  11. Communication between POP-C++ objects • Interface determines which protocol is used to connect to server object • Interface creates comboxcorresponding to that protocol • Combox asks its buffer factory to create corresponding buffer • Interface uses these combox and buffer to send/receive requests to/from broker

  12. Testing • Act as Web Services • Both client and server are implemented in POP-C++ • Client is implemented in POP-C++ and server is implemented in Java • Client is implemented in Java and server is implemented in POP-C++ • The extended POP-C++ is not only able to communicate to itself but also communicate to other Web Services systems

  13. Experiments • Use 2 machines running openSUSE 10.3 connected to a LAN via fast ethernet (100Mb/s) • The first machine: Intel(R) Core(TM)2 CPUs E8500 @ 3.16Gz and 1GB RAM • The second machine: Intel(R) Pentium(R) 4 CPU 2.80GHz and 512MB RAM • In the experiments, we analyze invocation time of calling function adding an array of integer numbers by using SOCKET+XDR, HTTP+XDR and HTTP+SOAP

  14. Sending data time will dominate encoding/decoding time when data is large enough

  15. Sending data time will dominate encoding/decoding time and sending HTTP header time when data is large enough

  16. Most of time is used for encoding and decoding when message size is large

  17. HTTP/XDR vs. SOCKET/XDR • HTTP/SOAP vs. others

  18. Conclusion • Extend POP-C++ object to integrate protocol HTTP and encoding SOAP into it • Be able to communicate to Web Services systems written by other languages • Be able to work in environments having firewall and using proxy server • Do some experiments to see the performance of the extended POP-C++ system

  19. Future works • Improve performance when using HTTP+SOAP • Enhance POP-C++ objects to support Grid Services

  20. Questions???

  21. Thank you!!!