heroku restart - 这是否会导致数据丢失

时间:2011-02-20 20:59:56

标签: ruby-on-rails heroku

使用heroku restart会导致数据丢失吗?是否在重新启动期间使用了最后一个数据库备份,或者数据库是否未受影响?

1 个答案:

答案 0 :(得分:6)

重启不会影响数据库。因此,一般来说,重启时不会发生数据丢失。

但是,它还会重新启动您的工作人员,这可能会中断当前正在处理的任何作业。这可能导致部分完成的作业,这可能会产生不希望的效果,具体取决于作业。您应该设计任何后台作业,以便在必要时从头开始重新启动(例如,在事务中执行任何数据库交互)。

您的dynos也可能产生类似的效果 - 在这种情况下,它不是部分完成的作业,而是部分完成的Web请求。但这很少会引起问题。

部署 - 但不一定是重启 - 也会导致临时目录(tmp/log/)中的任何文件被删除。

要防止这两种情况,请使用维护模式(heroku maintenance on)并确保在部署或重新启动之前所有工作人员和Web请求都已完成。