[Zope-dev] Zope.pipeline proposal

Hanno Schlichting hannosch at hannosch.eu
Wed Feb 25 12:22:04 EST 2009


Shane Hathaway wrote:
> Roger Ineichen wrote:
>> Do you know something about the performance of WSGI?
>>
>> I whould be happy to see some perfomance tests comparing
>> WSGI with other server concepts.
> 
> WSGI is extremely lightweight, so WSGI itself isn't going to affect 
> performance.  The WSGI servers I know about are reasonably fast.

What's the overhead of a WSGI middleware? Is the overhead cost in the
same order of magnitude as a simple function call with a return value or
is there something inherently more complex going on?

>From my current experience I usually classify things into the groups of:

1. attribute access
2. function calls
3. adapter lookups

Going from one of these groups into the next one has a very noticeable
performance cost involved, if used on the critical path of the application.

The same goes for "contract checks" in terms of:

1. getattr(object, 'foo')
2. isinstance(object, Foo)
3. IFoo.providedBy(object)

If you want to design things for astonishing speed, you need to make
trade-offs in terms of configurablity ;)

Hanno



More information about the Zope-Dev mailing list