0

我对这个令人兴奋的编程世界完全陌生,我希望我没有自己解决这个问题应该归咎于我的经验不足:

问题陈述: 我的应用程序使用烧瓶框架创建,部署在 heroku 上,有变量(存储在烧瓶会话中),有时在更新后会恢复到旧状态,有时它们不会更新。我的假设是这与分布式服务器有关,它为不同状态的变量提供服务。我已经在我的计算机上进行了广泛的本地测试,并且这个问题永远不会弹出,这只发生在部署时。

请问我该如何解决这个问题?我不知道确切的问题可能是什么。我希望我已经正确地提出了这个问题以得到帮助。我将在评论中收到任何反馈,以改进我的问题并获得答案。谢谢。

更多信息: 我开发了一个测验应用程序;对于每个问题,它在后端查询一个数据库,然后将此信息推送到用户选择答案的前端,javascript 降低生命数或增加分数(取决于正确或错误的答案)这个生命和分数信息被传递到后端并存储在“会话”中。我的第一个问题是;生命值和分数值有时不会更新,有时会更新,然后会恢复到以前的状态。我的第二个问题;当生活和分数变量状态不改变时,这些问题有时也会重复。

在此先感谢您的帮助。

4

1 回答 1

0

问题 文件已上传到应用程序,但一段时间后消失或被删除。

分辨率 Heroku 文件系统是短暂的——这意味着在 dyno 运行时对文件系统的任何更改只会持续到该 dyno 关闭或重新启动。每个测功机都使用最新部署的文件系统的干净副本启动。这类似于有多少基于容器的系统(例如 Docker)运行。

此外,在正常操作下,dynos 每天都会在一个称为“循环”的过程中重新启动。

这两个事实意味着 Heroku 上的文件系统不适合持久存储数据。如果您需要存储数据,我们建议使用 Postgres(用于数据)等数据库插件或 AWS S3(用于静态文件)等专用文件存储服务。如果您不想使用 AWS 设置帐户来创建 S3 存储桶,我们这里还有处理静态资产存储和处理的插件

https://help.heroku.com/K1PPS2WM/why-are-my-file-uploads-missing-deleted

于 2021-06-25T15:50:03.973 回答