当某个条件为真时,在轨道上实时和绝对地安排/触发操作?
我正在寻找一种方法,当某个条件为真时,在 ruby on Rails 中绝对实时地触发某个动作,而不会造成延迟。
一个简化的例子来说明这一点:
**table times**
id | time
1 12:00
2 12.05
3 13:00
- 每秒检查一次,看看数据库表中的 current_time == times
- 如果为 TRUE 那么它应该直接执行一段代码( function ),没有延迟
我已经研究过 resque 和elasque_jobs 但问题是这些不支持绝对实时执行,它们只是添加到队列中,这可能会导致执行延迟,它可能是最大的一秒
任何人都有上述情况的经验,并且可以向我指出如何在 Ruby 中实现上述情况的最佳实践在导轨?
Im looking for a way to trigger a certain action absolute and in realtime without delay in ruby on rails when a certain condition is TRUE.
A simplified example to illustrate this:
**table times**
id | time
1 12:00
2 12.05
3 13:00
- Checking every second, to see if the current_time == times in db table
- If TRUE then it should execute a piece of code ( function ) directly with no delays
I have looked into resque and delayed_jobs but the problem is those do not support a absolute realtime execution they just add to a queue which could cause delays in the execution, it can be a second of max
Anyone has experience with above case and could point me to the best practice on how to implement above in Ruby on rails?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
我最终编写了一个自定义的 rake 任务,每隔几秒就会用延迟的 gem 调用该任务
I end up writing a custom rake task, wich is called with delayed gem every few seconds