CherryPy ::嫁接wsgigateway vs将它添加到路线调度员

时间:2012-05-23 18:53:21

标签: python wsgi cherrypy

我是新手,我正在将代码从挂架转移到樱桃树......我有一个WSGIGateway对象,我嫁接到我的樱桃树上。

cherrypy.tree.graft(mygatewayobj, '/foo/')

我也有路线调度员

dispatcher.connect(route = '/foo', name ='foocontroller', controller = mygatewayobj)

我是否应该为网关建立两个连接,或者这种冗余是否是我意外的,无错误消息崩溃的可能原因?另外,如果我确实需要移植,应该是

/foo/ or /foo?

1 个答案:

答案 0 :(得分:1)

routesDispatcher.connect()相比,cherrypy.graft.tree()的效果非常差。

我为cherrypy做了一些基准测试,我得到的结果完全出乎意料。 当您尝试使用cherrypy的RouteDispatcher机制来路由URL时,RPS下降到接近一半。使用cherrypy.graft.tree()时,我能够获得大约2500 RPS,使用路线调度员时,RPS降至1100左右。

我的建议是使用cherrypy.graft.tree(),因为它允许您在不进行配置更新的情况下即时添加URL,而且速度也快得多。