【问题标题】:Fetching Data for Ruby's Rack App in specific time interval在特定时间间隔内为 Ruby 的 Rack 应用程序获取数据
【发布时间】:2011-03-01 18:47:24
【问题描述】:

我有一个非常简单的 ruby​​ rack 应用程序,它从网络服务中检索信息并将其转换为 JSON。

#config.ru

my_result = fetch_information_from_webservice
map '/feed' do
   run Proc.new {|env| [200, headers... , my_result.to_json]}
end

因此,当启动服务器时,它会获取信息,将其缓存并使用/feed 显示结果。 我想做的是不时重新加载 fetch_information_from_webservice 重新分配 my_result 一个全新的值

假设每 30 分钟服务器将再次获取外部信息,将其缓存到 /feed 并非常快速地显示它而不会打扰用户。

有什么方法可以做到无需创建外部脚本并将其作为 cron 作业加载(例如在自己的 configu.ru 文件中声明?

提前致谢

【问题讨论】:

    标签: ruby web-services cron rack fetch


    【解决方案1】:

    Rufus Scheduler 似乎完全符合我的要求,它非常整洁且运行流畅。

    我必须做的一件事是通过 Sinatra 而不是纯机架运行应用程序,因为原始 Rack 应用程序不会在 /feed 调用上相应地刷新结果,但使用 Sinatra 运行良好。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-02-14
      • 1970-01-01
      • 2020-02-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-11-12
      相关资源
      最近更新 更多