如何在Heroku上的Rails中保存一点点数据

时间:2013-10-25 15:50:11

标签: ruby-on-rails heroku

我有一个超级简单的Ruby on Rails应用程序,它没有任何ActiveRecord代码。该应用程序通过“记录”URL保存一行文本。我希望能够然后点击一个URL来反馈记录的任何文本行。像这样:

第1人:发布到www.myUrl.heroku.com/recorder,DATA =“非常有趣的字符串”

第2人:GET到www.myUrl.heroku.com/recorder,我希望我的回复包含“非常有趣的字符串”

这听起来很简单,这就是为什么我感到非常沮丧,我无法做到这一点。 Heroku有一个短暂的文件系统 - 我读了所有这些。并且无法从应用程序中访问Heroku日志(据我所知) - 我可以使用命令行工具,但这没有帮助。但我只需要那里的数据10分钟!

到目前为止,我们尝试了以下内容:

  • 保存到/ tmp中的本地文件 - 这有时会工作但是当Heroku在HTTP请求之间刷新目录时会失败,这是预期的行为
  • 通过直接文件写入保存到/ log中的日志文件 - 与上面相同,有时可以工作但也经常刷新
  • 使用Ruby记录器写入新的日志文件 - ditto
  • 使用puts写入Heroku日志 - 好主意,但是Heroku不会让你以这种方式写入生产日志,它写在其他地方你可以通过命令行访问但是(据我所知)不在应用程序中

我真的不想注册AWS,因为这是为其他人提供的服务,为1行文本注册1 tb的数据传输似乎很荒谬(任何时候某人“记录”都会覆盖它)。我也不想创建一个完整的ActiveRecord交易,再次,字面上是1行文本。

这里有什么想法吗?是否有一些微型缓存或我可以使用的任何东西?我只需要将数据持续大约10分钟。

谢谢!

达明

PS使用Ruby 2.0,rails 3.something。

1 个答案:

答案 0 :(得分:2)

您可以利用Rails应用程序缓存 - rails.cache.write('key','value')和rails.cache.read('key')