Rails 新手问题:“计划任务” 怎样实现?

bryanwong · 2012年02月10日 · 最后由 Saito 回复于 2012年02月10日 · 3978 次阅读

例如有一个 blog,作者写一篇文章之后,程序每 10 分钟检查一次,如果这篇文章有人回复,那么就自动生成一篇一模一样的文章 (目的是让新回复者看不到旧的回复,以为这是一篇全新文章)。

请问一下该如何实现呢?我只会用 crontab 来检查数据库,但是那样就破坏了程序的流程了。

这种就是用 cron 来实现

可以考虑看看 whenever,是对 cron 的封装 => https://github.com/javan/whenever

明显有触发条件,为啥要用定时任务?

谢谢大家的回复! 同时再请教一下,生成多篇文章的实现方法。 比如在 Ruby-China 里,我发表一篇帖子,那么实际上生成 5 篇,标题、内容一模一样。

而发布者 (我) 只能看到一篇,其他浏览者可以看到 5 篇。任何一篇被回复后,发表着 (我) 就都可以看到。

目的是为了让我以为只发表了一篇,而实际上发布了 5 篇。

这样做的意图是,我的一篇帖子,能分别被 5 个人回复,我可以分开来浏览,就相当于跟每一个人对话一样。

如果简单就用 cron,当业务复杂到一定程度,就要开发定时任务服务,用服务化的方式解决问题 切记,所有工具都有适用范围

话说这个明显是 observer 的作用范围。跟 cron 没神马关系啊。@hooopo +1

需要 登录 后方可回复, 如果你还没有账号请 注册新账号