因此,我在Heroku中成功部署了Dash应用程序。
我的应用程序有许多选项卡,并保存每个选项卡的状态。这意味着,如果用户在一个选项卡中更改了表,然后切换到另一个选项卡并返回到该选项卡,则该表具有与以前相同的内容。
问题是,如果用户退出站点然后再次输入,我不希望保存状态。
到目前为止,在开发过程中,我通过再次运行python命令再次运行该应用程序来实现了这一目标,但是现在我无法做到这一点(我使用Docker容器启动了该应用程序,似乎所有 session 之间共享一个镜像)。
Heroku中有没有办法解决这个问题?也许为每个新 session 创建一个新图像?
提前致谢。
最佳答案
您创建一个镜像以发布您的应用程序(例如v1.0)并在Docker env(Heroku或其他平台)上运行它。该应用程序在容器中运行,并为所有用户提供服务:每次重新启动或重新部署新镜像都将需要停机时间,这将影响所有人。
解决方案(据我所知)是您要清除给定用户的 session 数据,因此保存的状态将不会在下次访问时使用。
我认为您应该考虑在您的应用程序中执行此操作:例如,在访问主页URL(即应用程序的入口点)时,请清除与用户相关的所有设置(通常会用Cookie识别)。
如果没有帮助,则不能,如果不能共享,请更多有关如何保存用户状态的详细信息。
关于python - 如何使用Heroku在状态下部署Dash应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61445664/