Django网站的响应时间差异

时间:2014-11-18 07:44:47

标签: django performance response gunicorn

我正在开发一个测量网站响应时间的网络服务。它是一个Django应用程序,作为初始测试,我在同一个VPS上的几个其他Django站点上指出它。大多数时候响应时间很短(约5毫秒),但是在相当规律的(5或10分钟)时间表上,跳转到更高的值(最多400毫秒,尽管没有繁重的数据库负载或缓存)。

我自己的计时方法可疑,我把它指向同一个VPS上的静态网站,并获得了一致的快速响应。然后我使用nginx的response_time和upstream_response_time日志来发现它确实是我的Django应用程序给出了响应时间差异。

然后我将应用程序指向网络上的其他几个Django网站,并发现了类似的结果:那里有一个快速的基线"响应相当规律的尖峰到一两个非常可重复的较慢时间。例如,一个人有一个25ms的基线,大约200ms,大约400ms"步骤"。

在我的某个网站上使用Django调试工具栏的“时间”标签,我可以看到此行为。大多数F5重新加载很快,但偶尔(相当一致的十分之一)慢速重载,所有时间花费在"请求"部分。

有什么想法吗?

1 个答案:

答案 0 :(得分:1)

解决了它:它是枪炮"最大请求"设置,每X个连接产生一个新工人。当X为10并且我正在击中"安静"网站,响应时间长,每十次点击。

这就是为什么我只注意到一些Django网站上的多模式时间:其他人大概是忙着或不使用gunicorn。