I am trying to learn Soap and perl so that I can setup a semi sophisticated client server architecture for managing vmware machines and images for automation testing. I have ok perl experience but i am average at best and no soap experience. Here is what I am trying to do
Main Machine -> Its going to have a apache running on it and will be a web interface to controlling vmware machines on seperate computers. os is linux
Vmware host machines -> will be several physical machines hosting vmware os is linux
VMware client -> will be vmware client os running windows
Now I need soap on all 3 layers to communicate with each other. The manager will get a request via web interface to launch a specific vmware image. The manager needs to send that request with parameters to vmware host machine. The vmware host machine will then launch the vmware session based on parameters and then the vmware session will start. then once the session is started after a specified about of time the vmware session will give a log back to the host machine and the host machine will then in turn send the log into a database. Now I have this logically laid out in my head and on paper.
Now I would like some help with how soap would fit in best. I have been reading some docs and it looks like soap processes are either client or server and not both. I was hoping to write client/server pieces at all three layers so that they could talk back and forth easily. I would like to be able to send status messages and create a protocol of communication between all 3 layers. But from what I have seen with soap you have to write client and then server then somehow syncronize between them which seems to make it overly difficult.
Also is it better to run as cgi scrips or run with the daemons option and listen on specified ports?
Any online references will also help. A