我在Heroku上部署了一个应用程序,它从文件中读取一行,然后应该删除文件中的那一行并将该行添加到另一个文件中。如果所有必需的文件都在Heroku git repo中并且假设代码运行没有任何错误,那么文件是否会被更改?
答案 0 :(得分:1)
当你的dyno重新启动时,直接对Heroku dynos上的文件系统所做的更改将会丢失。这happens frequently:
Dynos也每天至少重启一次(循环)一次,以帮助维护在Heroku上运行的应用程序的运行状况。对本地文件系统will be deleted的任何更改。循环每24小时发生一次(加上216个随机分钟,以防止应用程序的每个dyno同时重新启动)。
您应该考虑使用数据库,而不是写入文件系统上的文件。 Heroku provides a PostgreSQL service,但有很多other options。
如果由于某种原因你真的需要存储一个文件,Heroku recommends using something like Amazon S3。