views:

99

answers:

1

I need to develp a real production webservice with python that will be used by another client application (with another progamming language ) . I mean in real production webservice that this webserivce is will be used on critical environment that failure of the webserivce could cause major problems.

could someone provide /suggest which library to use in order to build such webservice with python ?

I know that python has the built in simpleXMLRPCServer but i don't know its quality and if its apropriate for real production usage .

+1  A: 

Python has been used to develop production grade web services. There are numerous framework to do that. (Django, Twisted etc).

You expect certain quality attributes from production grade servers like availability, scalability etc. For mission critical applications, availability becomes important. Your application architecture and development may influence these attributes more than the frameworks that you may use to develop them with. You can plan to provide extensive fault tolerance, redundant systems and various other strategies to improve availability.

This applies to building application with Python framework too.

Twisted is a very good framework to develop networking and web applications. There are other frameworks available in Python too, for example : Tornado etc

You can go through certain twisted docs and also the following blog posts that can help understanding twisted better.

  1. Twisted in 60 seconds series
  2. A very good twisted introduction
  3. I have been exploring twisted basics and have posted a few notes at my blog

Twisted docs:

  1. http://twistedmatrix.com/documents/10.1.0/web/howto/xmlrpc.html
  2. http://stackoverflow.com/questions/2202231/python-defertothread-xmlrpc-server-twisted-cherrypy
  3. http://nullege.com/codes/search/SimpleXMLRPCServer.SimpleXMLRPCDispatcher/all/1
  4. http://code.activestate.com/recipes/526625-twisted-xml-rpc-server-with-basic-http-authenticat/
  5. http://www.artima.com/weblogs/viewpost.jsp?thread=156396

Some projects along this line:

  1. http://freshmeat.net/projects/python-xmlrpc-server-w-ssl-authentication

Django:

  1. https://launchpad.net/django-xmlrpc
  2. http://djangosnippets.org/snippets/2078/
  3. http://www.drdobbs.com/184405364
  4. http://www.davidfischer.name/2009/06/django-with-jsonrpc-and-xmlrpc/

Others:

  1. http://www.f4ntasmic.com/2009/03/simple-xmlrpc-server.html

I hope this helps. :)

pyfunc
Ok thanks could you provide me a link where i can strart for example which django modules i need or which twisted modules in need
sergio
I have edited my answer above to provide you quite a few pointers on twisted, django examples and information capabilities with xmlrpc.
pyfunc