为许多并发用户部署 Dash 应用程序 - dcc.Store() & States
Deploying a Dash app for many concurrent users - dcc.Store() & States
我有一个关于通过 uwsgi 部署 plotly Dash 应用程序的简短问题。该应用程序旨在供许多并发用户使用,我们想知道当前的方法是否适合许多并发用户,主要是因为我们使用状态和 dcc.Store() 组件。我不知道使用状态参数可能会导致许多并发用户出现问题,所以任何额外的见解将不胜感激!如有必要,我也可以提供一个最小的 Dash 示例。
- 我们通过选项卡设计了一个多页面应用程序,用户可以在三个选项卡中进行输入。输出随后显示在第四个选项卡中,由回调触发。
- 应用回调通过按钮(n 次点击)触发,用户的许多输入参数通过状态调用。
- 存储类型定义如下:dcc.Store(id='session', storage_type='session')
- 所有字段都具有以下持久性设置:persistence=True,persistence_type = 'memory'
该应用程序本身已经可以供个人使用,因此 uwsgi 和 Apache 服务器在程序运行时已正确配置。目前主要关心的是并发用户,States中保存的input是否相互影响。
从给出的信息来看,您似乎将所有状态都存储在客户端,因此服务器按照 Dash 中的预期保持无状态。因此,我不希望您 运行 遇到任何与并发用户有关的问题。
我有一个关于通过 uwsgi 部署 plotly Dash 应用程序的简短问题。该应用程序旨在供许多并发用户使用,我们想知道当前的方法是否适合许多并发用户,主要是因为我们使用状态和 dcc.Store() 组件。我不知道使用状态参数可能会导致许多并发用户出现问题,所以任何额外的见解将不胜感激!如有必要,我也可以提供一个最小的 Dash 示例。
- 我们通过选项卡设计了一个多页面应用程序,用户可以在三个选项卡中进行输入。输出随后显示在第四个选项卡中,由回调触发。
- 应用回调通过按钮(n 次点击)触发,用户的许多输入参数通过状态调用。
- 存储类型定义如下:dcc.Store(id='session', storage_type='session')
- 所有字段都具有以下持久性设置:persistence=True,persistence_type = 'memory'
该应用程序本身已经可以供个人使用,因此 uwsgi 和 Apache 服务器在程序运行时已正确配置。目前主要关心的是并发用户,States中保存的input是否相互影响。
从给出的信息来看,您似乎将所有状态都存储在客户端,因此服务器按照 Dash 中的预期保持无状态。因此,我不希望您 运行 遇到任何与并发用户有关的问题。