Fastest web framework

Tarek Ziadé tarek at ziade.org
Wed Sep 26 05:08:19 EDT 2012


On 9/25/12 3:21 PM, Andriy Kornatskyy wrote:
> Tarek,
>
> With all respect, running benchmark on something that has sleeps, etc is pretty far from real world use case. So I went a little bit different way.
That's not a good summary of what the function does. It does not just 
sleep. It does some I/O and CPU bound tasks. The sleep is here to 
simulate a blocking I/O call, besides the DB calls.

The whole function tries to simulate a real application, unlike printing 
'Hello World' - to put the stack under realistic conditions.

The multiplication is cached by the processor, but will still push some 
CPU work on every call.

>
> Here is a live demo (a semi real world web application) that comes with wheezy.web framework as a template:
>
> http://wheezy.pythonanywhere.com/
>
> I have implemented it in a way that it uses one web framework (wheezy.web) and various template engines (jinja2, mako, tenjin, wheezy.template and wheezy.template with preprocessor)... Please see the following post under `Real World Example` section:
>
> http://mindref.blogspot.com/2012/07/python-fastest-template.html
>
> Source code here:
>
> https://bitbucket.org/akorn/wheezy.web/src/tip/demos/template
>
> The real world example shows the difference between template engines implementing the same things. The same applies to web frameworks (more or less depending on your choice).
>
> Thanks.
Great, thanks for the update ! -- that's cool to bench the template 
engines, but this is still not what I had in mind.

What I had in mind was to try each one of the framework with an 
application that does things, and see how the whole stack reacts on high 
load.

But I guess we have different goals - wheezy seems really fast, congrats.


Cheers
Tarek

> Andriy
>
>
> ----------------------------------------
>> Date: Mon, 24 Sep 2012 13:50:31 +0200
>> From: tarek at ziade.org
>> To: python-list at python.org
>> Subject: Re: Fastest web framework
>>
>> On 9/23/12 11:19 AM, Andriy Kornatskyy wrote:
>>> I have run recently a benchmark of a trivial 'hello world' application for various python web frameworks (bottle, django, flask, pyramid, web.py, wheezy.web) hosted in uWSGI/cpython2.7 and gunicorn/pypy1.9... you might find it interesting:
>>>
>>> http://mindref.blogspot.com/2012/09/python-fastest-web-framework.html
>>>
>>> Comments or suggestions are welcome.
>>>
>>> Thanks.
>>>
>>> Andriy Kornatskyy
>>>
>> I would try this with a web app that does more than 'Hello World'
>>
>> You may argue that you're just trying the server stack, but that's not
>> realistic because you don't really measure how the server behaves with a
>> real app.
>>
>> Have a look at
>> https://github.com/mozilla-services/chaussette/blob/master/chaussette/util.py#L188
>>
>> (setup_bench and teardow_bench have to be run on startup and tear down
>> of the server)
>>
>> I would be curious to see how things goes then
>>
>> Cheers
>> Tarek
>> --
>> http://mail.python.org/mailman/listinfo/python-list
>   		 	   		




More information about the Python-list mailing list