[Crosspost][Longpost]Python, SOAP and XML

vivek khurana <khuranavivek_in-/[email protected]> Mon, 16 May 2005 08:34:12 -0700 (PDT)
Newsgroups gmane.user-groups.linux.delhi.devel,gmane.user-groups.linux.india.programmers
Message-ID <[email protected]>
hi! all

 I am writing an application which is based on client
server archietecture. This application has several
modules and all modules are installed at the server.
All clients have lots of forms. When a userclicks on
submit form data is validated and sent to server.
Server then processes the data and sends back a ok
signal or an error. Some form elements (such as combo
box and some labels) need to get data from server too.
Get command will get either an atomic value or a list
from the server
 Server is wriiten using python. There are web bases
clients and there are GUI based clients depending on
the module to module. Also, at a given moment there
can be several clients connected to server.

 We are going to use SOAP for communicating between
client and server. I have two options for
communications, first is that write functions and
register them with SOAP interface at server then call
those functions with form data passed as array and
receive data for get command as array from server.
Secon option is that i create a XML file out of form
data with form name and elements, serialize the xml
file and send it across to serve. At server end i
could have an handler for all incoming requests which
will parse the xml file and then call respective
function based on form name in the file. For this i
could maintain a map of function and form name in the
server.

 As there will be more modules that can be added in
the future i am unable to decide which of the two
methods is better. The deciding criteria is that 
a) it should be easy to install new module. I wuld
prefer that a sys admin should be able to run a simple
patch to install new module. Thats why i am sceptic of
using WSDL as it will be difficult to update WSDL file
or the alternative which comes to my mind is that we
generate a new wsdl file fr every module release. This
couldturn into a maintance nightmare soon.
b) speed and latency. For second module i doubt the
latency time for request to go and response to come as
a lot of serilazation and deserialization along with
xml parsing will happen. The advantage of this method
will be that we can define a register function for
every module which will register handler function for
every module in the handler map.
 I am unable to decide which is a better way. What you
guys suggest? what you all think are the pros and cons
of each method? Has anyone worked on such an
application, if so than what alternatives can you
suggest?

regards
VK

Hug the REALITY ;-)



Disclaimer
The facts expressed here belong to everybody, the opinions to me. The distinction is yours to draw...


		
__________________________________ 
Do you Yahoo!? 
Yahoo! Mail - Helps protect you from nasty viruses. 
http://promotions.yahoo.com/new_mail