[openstack-dev] [oslo] deprecating openstack.common.wsgi

Doug Hellmann doug.hellmann at dreamhost.com
Thu May 30 14:55:28 UTC 2013


On Thu, May 30, 2013 at 9:16 AM, Jarret Raim <jarret.raim at rackspace.com>wrote:

>   Both Logging (Meniscus) and Key Management (Barbican) are using Falcon (
> http://falconframework.org/) right now. I'm not adverse to a change if
> needed, but have we addressed the performance issues from the Falcon page?
> If Pecan serves 9ish times fewer requests, that seems like a rather large
> red flag.
>

If you look very carefully at the benchmark scripts, you'll see that the
numbers for falcon are artificially enhanced by the fact that the falcon
test app is only looking at one regular expression when routing requests.
Using more realistic number of patterns in the routing list, in a random
order, makes the difference in performance much smaller. This was discussed
somewhat in the previous thread on the topic on this mailing list (
http://lists.openstack.org/pipermail/openstack-dev/2013-April/007709.html).
There have also been changes in Pecan to improve its performance
significantly (30% based on the benchmark app in the falcon repo).


>
>  One benchmark is not enough data to make any decisions, but I didn't see
> any discussion of the performance of Pecan / WSME in the etherpad from the
> design summit. Has anyone done any performance testing of the proposed set
> up?
>

I am much more interested in the ease of use, since I don't see receiving
and responding to the web request as the most expensive part of most API
calls (especially not for anything that hits the database or makes RPC
calls). We obviously don't want to ignore performance, but I would rather
put effort into improving an existing project that is very easy to use than
into building something new from scratch.

Doug


>
>
>  Jarret
>
>
>   From: Doug Hellmann <doug.hellmann at dreamhost.com>
> Reply-To: OpenStack List <openstack-dev at lists.openstack.org>
> Date: Wednesday, May 29, 2013 7:07 PM
> To: OpenStack List <openstack-dev at lists.openstack.org>
> Subject: [openstack-dev] [oslo] deprecating openstack.common.wsgi
>
>   I have -2ed several changes to the wsgi module in oslo-incubator in the
> last few weeks, and I wanted to bring it up on the list to explain the
> reasons more broadly.
>
>  At the last summit we agreed that the goal was to start deprecating our
> home-grown WSGI service implementation in favor of moving to a new set of
> tools called Pecan and WSME (
> https://etherpad.openstack.org/havana-common-wsgi). While I understand
> that we can't just drop everything and build new API servers, I do feel
> strongly that we should not continue developing new features for the module
> we are deprecating.
>
>  I don't see any other projects with "wsgi" in their
> openstack-common.conf, nor did I find any copies of
> openstack/common/wsgi.py in any other projects. I did find several wsgi.py
> files in different directories in the projects. I take that to mean that we
> are/were still in the process of unifying the various forked versions of
> the module, and I propose that we just not bother doing more work on that.
> Since no project is already using Oslo's wsgi module, I'm not sure it makes
> sense to bring bug fixes into Oslo, either. If I've missed something, and
> projects are in fact using the module, then we should continue to deal with
> bug fixes.
>
>  To officially indicate the module as deprecated, Mark suggested moving
> it to openstack/common/deprecated/wsgi.py. I have done that in changeset
> https://review.openstack.org/#/c/30972/. As the commit log message
> mentions, there is still some work to be done to remove the dependency
> between one or two of the middleware classes and the now deprecated module.
> I would appreciate any ideas about the best way to do that from folks who
> know about those modules.
>
>  As we move to the new tools, I am sure we will find new bits of code
> related to setting up those projects that we can share. For example, the
> code to configure the keystone middleware for an API service shouldn't need
> to be repeated across all of the projects. We should start a new module to
> hold those pieces, taken from the projects that are starting to use Pecan
> and WSME already. I volunteer to be the primary maintainer for that new
> module within Oslo.
>
>  Doug
>
>
> _______________________________________________
> OpenStack-dev mailing list
> OpenStack-dev at lists.openstack.org
> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstack.org/pipermail/openstack-dev/attachments/20130530/51f182d2/attachment.html>


More information about the OpenStack-dev mailing list