【发布时间】:2014-08-06 15:58:31
【问题描述】:
我有一个每 12 小时运行一次的计划作业,它将图像文件从 FTP 服务器解压缩到我的 tmp 文件夹中。问题是由于 Heroku 的临时文件系统,每当我部署新代码时,当 dyno 重新启动并且文件不再存在时,tmp 文件夹就会被清除。我希望能够随意部署代码,而无需担心。
我曾考虑创建第二个应用程序来运行此任务并连接到同一个数据库。根据this SO answer。这样我可以将与此任务无关的代码更新部署到我的生产服务器,并且可以更有选择性地选择何时部署到第二台服务器。
有没有人有过在同一个数据库上运行两个应用程序的经验?还是有更好的方法来解决我的问题?我读过 Heroku 可能随时更改数据库 URL,因此第二个应用程序可能会失去连接。这有多普遍?谢谢!
【问题讨论】:
-
依赖/tmp 永久化是自找麻烦。考虑将文件存储在 s3(或类似)上
标签: ruby-on-rails ruby-on-rails-3 postgresql heroku ruby-on-rails-3.2