Suitable software stacks for simple python web service

Steve Petrie spetrie at gmail.com
Wed Nov 21 11:17:10 EST 2012


On Wednesday, November 21, 2012 2:32:40 AM UTC-5, Kev Dwyer wrote:
> Hello List,
> 
> 
> 
> I have to build a simple web service which will:
> 
> 
> 
>  - receive queries from our other servers
> 
>  - forward the requests to a third party SOAP service
> 
>  - process the response from the third party
> 
>  - send the result back to the original requester
> 
> 
> 
> >From the point of view of the requester, this will happen within the scope 
> 
> of a single request.  
> 
> 
> 
> The data exchanged with the original requester will likely be encoded as 
> 
> JSON; the SOAP service will be handled by SUDS.
> 
> 
> 
> The load is likely to be quite light, say a few requests per hour, though 
> 
> this may increase in the future.
> 
> 
> 
> Given these requirements, what do you think might be a suitable software 
> 
> stack, i.e. webserver and web framework (if a web framework is even 
> 
> necessary)?  
> 
> 
> 
> Candidates should be compatible with Python2.7, though I'd be happy to 
> 
> consider Python 3 if anyone knows of a Python3 SOAP library that has good 
> 
> WSDL support.
> 
> 
> 
> Cheers,
> 
> 
> 
> Kev

I'm using the Bottle web framework (http://bottlepy.org) to integrate requests and replies originating in a Drupal site, a Beanstream (payment processor) account, and a Salesforce instance.

Communication with Salesforce is done through the Salesforce Python Toolkit (http://code.google.com/p/salesforce-python-toolkit/), which uses Suds.

Communication with the Drupal site uses Python's (and PHP's on the Drupal side) native JSON support.

This is under Python 2.6.8 and Apache 2.2.23 running on an AWS EC2 instance.

No (major) problems so far, though still in the early stages of this project.

Steve



I chose Bottle after trying a few other frameworks because, well, I can't remember exactly why, though thinking back it's probably because of the clarity of Bottle's approach and the simplicity of the documentation.



More information about the Python-list mailing list