Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.python > #33707 > unrolled thread

Suitable software stacks for simple python web service

Started byKev Dwyer <kevin.p.dwyer@gmail.com>
First post2012-11-21 07:32 +0000
Last post2012-11-21 08:17 -0800
Articles 7 — 2 participants

Back to article view | Back to comp.lang.python


Contents

  Suitable software stacks for simple python web service Kev Dwyer <kevin.p.dwyer@gmail.com> - 2012-11-21 07:32 +0000
    Re: Suitable software stacks for simple python web service Steve Petrie <spetrie@gmail.com> - 2012-11-21 08:17 -0800
      Re: Suitable software stacks for simple python web service Kev Dwyer <kevin.p.dwyer@gmail.com> - 2012-11-22 06:42 +0000
        Re: Suitable software stacks for simple python web service Steve Petrie <spetrie@gmail.com> - 2012-11-24 04:52 -0800
          Re: Suitable software stacks for simple python web service Kev Dwyer <kevin.p.dwyer@gmail.com> - 2012-11-24 14:52 +0000
        Re: Suitable software stacks for simple python web service Steve Petrie <spetrie@gmail.com> - 2012-11-24 04:52 -0800
    Re: Suitable software stacks for simple python web service Steve Petrie <spetrie@gmail.com> - 2012-11-21 08:17 -0800

#33707 — Suitable software stacks for simple python web service

FromKev Dwyer <kevin.p.dwyer@gmail.com>
Date2012-11-21 07:32 +0000
SubjectSuitable software stacks for simple python web service
Message-ID<mailman.132.1353483159.29569.python-list@python.org>
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

[toc] | [next] | [standalone]


#33744

FromSteve Petrie <spetrie@gmail.com>
Date2012-11-21 08:17 -0800
Message-ID<ec8cdd79-0075-4a21-8197-95a72bbb8b46@googlegroups.com>
In reply to#33707
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.

[toc] | [prev] | [next] | [standalone]


#33788

FromKev Dwyer <kevin.p.dwyer@gmail.com>
Date2012-11-22 06:42 +0000
Message-ID<mailman.195.1353566559.29569.python-list@python.org>
In reply to#33744
Steve Petrie wrote:

> 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.


Hello Steve,

Thanks for  your comment.

I'm curious, did you consider any web servers other than Apache? 

Kev

[toc] | [prev] | [next] | [standalone]


#33885

FromSteve Petrie <spetrie@gmail.com>
Date2012-11-24 04:52 -0800
Message-ID<6752ebe2-6c71-45d3-8011-6d5fba4a73af@googlegroups.com>
In reply to#33788
On Thursday, November 22, 2012 1:42:42 AM UTC-5, Kev Dwyer wrote:
> Steve Petrie wrote:
> 
> 
> 
> > 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.
> 
> 
> 
> 
> 
> Hello Steve,
> 
> 
> 
> Thanks for  your comment.
> 
> 
> 
> I'm curious, did you consider any web servers other than Apache? 
> 
> 
> 
> Kev

You're telling me that there are other web servers? ;)

I didn't try any others seriously, no.  My experience is with Apache and IIS, and I try to stay away from Windows.

I should mention, given Dieter Maurer's comment, that Bottle is a (fairly thin) layer built over WSGI.  I've built applications directly over WSGI as well; that's another way to go, it's quite straightforward.  mod_python is no longer supported: http://blog.dscpl.com.au/2010/05/modpython-project-soon-to-be-officially.html.

[toc] | [prev] | [next] | [standalone]


#33887

FromKev Dwyer <kevin.p.dwyer@gmail.com>
Date2012-11-24 14:52 +0000
Message-ID<mailman.255.1353769659.29569.python-list@python.org>
In reply to#33885
Steve Petrie wrote:

> On Thursday, November 22, 2012 1:42:42 AM UTC-5, Kev Dwyer wrote:
>> Steve Petrie wrote:
>> 
>> 
>> 
>> > 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.
>> 
>> 
>> 
>> 
>> 
>> Hello Steve,
>> 
>> 
>> 
>> Thanks for  your comment.
>> 
>> 
>> 
>> I'm curious, did you consider any web servers other than Apache?
>> 
>> 
>> 
>> Kev
> 
> You're telling me that there are other web servers? ;)
> 
> I didn't try any others seriously, no.  My experience is with Apache and
> IIS, and I try to stay away from Windows.
> 
> I should mention, given Dieter Maurer's comment, that Bottle is a (fairly
> thin) layer built over WSGI.  I've built applications directly over WSGI
> as well; that's another way to go, it's quite straightforward.  mod_python
> is no longer supported:
> http://blog.dscpl.com.au/2010/05/modpython-project-soon-to-be-
officially.html.


Based on Dieter's comment I'm using Bottle as a framework, with gunicorn 
(behind nginx) as the webserver.  Even Bottle is probably overkill for my 
use case, but my time is rather limited, so I'm happy to use an off the 
shelf solution.  And I must say, configuring gunicorn and nginx contrasted 
pleasantly with my memories of struggling with httpd.conf :)


[toc] | [prev] | [next] | [standalone]


#33886

FromSteve Petrie <spetrie@gmail.com>
Date2012-11-24 04:52 -0800
Message-ID<mailman.254.1353761526.29569.python-list@python.org>
In reply to#33788
On Thursday, November 22, 2012 1:42:42 AM UTC-5, Kev Dwyer wrote:
> Steve Petrie wrote:
> 
> 
> 
> > 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.
> 
> 
> 
> 
> 
> Hello Steve,
> 
> 
> 
> Thanks for  your comment.
> 
> 
> 
> I'm curious, did you consider any web servers other than Apache? 
> 
> 
> 
> Kev

You're telling me that there are other web servers? ;)

I didn't try any others seriously, no.  My experience is with Apache and IIS, and I try to stay away from Windows.

I should mention, given Dieter Maurer's comment, that Bottle is a (fairly thin) layer built over WSGI.  I've built applications directly over WSGI as well; that's another way to go, it's quite straightforward.  mod_python is no longer supported: http://blog.dscpl.com.au/2010/05/modpython-project-soon-to-be-officially.html.

[toc] | [prev] | [next] | [standalone]


#33745

FromSteve Petrie <spetrie@gmail.com>
Date2012-11-21 08:17 -0800
Message-ID<mailman.159.1353514634.29569.python-list@python.org>
In reply to#33707
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.

[toc] | [prev] | [standalone]


Back to top | Article view | comp.lang.python


csiph-web