Hanno Schlichting wrote:
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?
A WSGI middleware app is simply a callable thing that calls the next app, so the overhead is literally the same as a simple function call. There won't be security proxies or any other such thing getting in the way.
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 current publisher is chock full of function calls and adapter lookups along the critical path. I expect the zope.pipeline project to open everyone's eyes about just how much we're already doing in the critical path. I think much of it is frequently not needed at all. Shane