加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby-on-rails – 如何在Rails 3.1中渲染后执行一些任务

发布时间:2020-12-16 19:36:08 所属栏目:百科 来源:网络整理
导读:我正在使用 Impressionist记录页面曝光.数据库写入只需要大约50ms,但我真的更喜欢在页面呈现并发送到客户端之后执行此操作. 我已经研究了通过Spawn进行分组,但它建立了一个新的数据库连接,似乎是这样一个小工作的过度.延迟工作和其他后台处理库似乎是重大的
我正在使用 Impressionist记录页面曝光.数据库写入只需要大约50ms,但我真的更喜欢在页面呈现并发送到客户端之后执行此操作.

我已经研究了通过Spawn进行分组,但它建立了一个新的数据库连接,似乎是这样一个小工作的过度.延迟工作和其他后台处理库似乎是重大的过度杀戮.写数据库只是为了推迟写入数据库…不是一个胜利.

我希望我可以:

def show
  render
  impressionist(@article)
end

…并且印象主义者使用相同的数据库连接和与动作相同的所有相同的请求数据,只是在该操作已经返回到客户端之后.但是,这不是渲染方法的工作原理.

任何解决方案?在Heroku Cedar上运行Rails 3.1和Ruby 1.9.2.

解决方法

产生一个新线程. Heroku将允许您每个dyno最多15个线程.
def show
  render
  Thread.new do
    impressionist(@article)
  end
end

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读