如何停止来自 dash_renderer 的 http 请求
How to stop http request from dash_renderer
我正在尝试为高频数据构建一个实时监控系统。为了提高性能,我使用了 dcc.Graph() 的 extendData 属性 和 websocket。这样,浏览器不需要发送请求来获取数据。
我发现它仍然没有像预期的那样提高性能。我发现的原因是,在浏览器中,我看到(通过从浏览器检查网络)几毫秒后浏览器仍在发送请求并且发起者是 dash_renderer.
这张图片是一个普通的例子,只是为了显示即使是一个文本框的例子,http 请求也是如此。对于我的实时 websocket 仪表板,请求的频率非常高。
我的问题是:
- dash_renderer做什么?
- 为什么发送http请求?
- 如何停止?
如果你 运行 Dash 在调试模式下,它有一个叫做 Hot Reloading 的功能,它会定期(默认情况下每 3 秒)检查你的代码库的变化和如果找到任何内容,请更新您的 运行ning 应用程序。检查更新代码就是您在网络检查中看到的内容。
要关闭它,请不要在调试模式下 运行 或明确将 dev_tools_hot_reload
设置为 False,如下所示:
app.run_server(debug=True, dev_tools_hot_reload=False)
虽然晚了,但经过一些经验,我意识到 dash 并不是为 websocket 设计的。它使用 call-backs 实际向服务器发送请求,在服务器中,回调函数(python)发回一些结果。
这些 call-backs 旨在向服务器发送 HTTP 请求。
对于高速数据,websocket 应该在客户端使用 extendTrace
方法plotly.js。
我正在尝试为高频数据构建一个实时监控系统。为了提高性能,我使用了 dcc.Graph() 的 extendData 属性 和 websocket。这样,浏览器不需要发送请求来获取数据。
我发现它仍然没有像预期的那样提高性能。我发现的原因是,在浏览器中,我看到(通过从浏览器检查网络)几毫秒后浏览器仍在发送请求并且发起者是 dash_renderer.
这张图片是一个普通的例子,只是为了显示即使是一个文本框的例子,http 请求也是如此。对于我的实时 websocket 仪表板,请求的频率非常高。
我的问题是:
- dash_renderer做什么?
- 为什么发送http请求?
- 如何停止?
如果你 运行 Dash 在调试模式下,它有一个叫做 Hot Reloading 的功能,它会定期(默认情况下每 3 秒)检查你的代码库的变化和如果找到任何内容,请更新您的 运行ning 应用程序。检查更新代码就是您在网络检查中看到的内容。
要关闭它,请不要在调试模式下 运行 或明确将 dev_tools_hot_reload
设置为 False,如下所示:
app.run_server(debug=True, dev_tools_hot_reload=False)
虽然晚了,但经过一些经验,我意识到 dash 并不是为 websocket 设计的。它使用 call-backs 实际向服务器发送请求,在服务器中,回调函数(python)发回一些结果。 这些 call-backs 旨在向服务器发送 HTTP 请求。
对于高速数据,websocket 应该在客户端使用 extendTrace
方法plotly.js。