我们使用uwsgi + nginx来构建网站。最近,我们希望改进我们网站的qps,因此我们决定将uwsgi模式从prefork切换到线程。但我们发现了一些非常糟糕的事情。
当使用prefork模式且worker设置为5时,我们得到的请求时间是10-20ms。但在线程模式(一个工作线程5个线程)中,值增加到100-200ms。这太糟糕了。
我们发现memcache.Client花费的时间最多,这使得请求时间增加。
请帮助我知道问题出在哪里以及如何解决,谢谢!
PS: 码: 导入memcache client = memcache.Client(['127.0.0.1:11211']) client.get( '的myKey')
答案 0 :(得分:0)
您可能正在经历python GIL开销。尝试添加第二个流程以查看结果是否更好。