Django 开发服务器中的第一个请求非常慢
Very slow first request in Django Development server
每当我 运行 python manage.py 运行 服务器并在浏览器中使用 localhost:8000 访问我的网站时,第一个请求非常慢(大约10 秒)。
以下请求真的很快。
有什么办法可以提高它的性能吗?
非常不方便,因为在开发的时候,总是因为代码的更新而重新加载。
非常感谢。
这种情况发生在空的 Django 项目(新生成的)上还是只发生在您的特定站点上?
没有更具体的信息,很难说出原因。
第一个请求很可能延迟初始化了一些数据。它可以例如调用外部网站获取数据,但由于 DNS 错误或 Internet 连接速度慢而速度缓慢。或者,缓存为空,并在 Django 开发服务器启动时重新填充。
找到了,将数据发送到远程监控服务的中间件。解决方案是仅在生产服务器上激活它,而不是在开发服务器上激活它!
使用 django-debug-toolbar ,django-debug-toolbar 是一个非常方便的工具,可以深入了解您的代码在做什么以及花费了多少时间。特别是它可以显示您的页面生成的所有 SQL 查询,以及每个查询花费的时间。
如果您在 0.0.0.0
而不是 127.0.0.1
上启动 runserver
,您将遇到此类问题,因为它必须解决一些奇怪的路由接口循环。
每当我 运行 python manage.py 运行 服务器并在浏览器中使用 localhost:8000 访问我的网站时,第一个请求非常慢(大约10 秒)。
以下请求真的很快。 有什么办法可以提高它的性能吗? 非常不方便,因为在开发的时候,总是因为代码的更新而重新加载。
非常感谢。
这种情况发生在空的 Django 项目(新生成的)上还是只发生在您的特定站点上?
没有更具体的信息,很难说出原因。
第一个请求很可能延迟初始化了一些数据。它可以例如调用外部网站获取数据,但由于 DNS 错误或 Internet 连接速度慢而速度缓慢。或者,缓存为空,并在 Django 开发服务器启动时重新填充。
找到了,将数据发送到远程监控服务的中间件。解决方案是仅在生产服务器上激活它,而不是在开发服务器上激活它!
使用 django-debug-toolbar ,django-debug-toolbar 是一个非常方便的工具,可以深入了解您的代码在做什么以及花费了多少时间。特别是它可以显示您的页面生成的所有 SQL 查询,以及每个查询花费的时间。
如果您在 0.0.0.0
而不是 127.0.0.1
上启动 runserver
,您将遇到此类问题,因为它必须解决一些奇怪的路由接口循环。