【发布时间】:2012-03-28 12:56:39
【问题描述】:
好的.. 在 heroku 我有 24 名工人(据我所知) 我说有1000个客户。每个在 postgresql 数据库中都有自己的“模式”。
每个客户都有可以“稍后”完成的任务。向我的公司后端发送订单就是一个很好的例子。
我在想我可以为每个客户端创建一个新队列,每个队列都有自己的工作者(进程)。这似乎不在卡片中。
好吧..我现在的想法是在客户记录中有一个队列字段.. 所以客户端 1 到 15 在 queue_a 并且客户端 16 到 106 在 queue_b 中。如果一个客户端正在使用堆,我们可以将它们移动到新队列,或者将其他客户端移出慢队列。可以收集数量较少的客户。这将是一种平衡行为,但如果我们跟踪指标(无论如何我们都会这样做),管理起来就不会那么难
(听到任何反击的想法都会很棒,我真的处于吐球阶段)
不过,现在。我想弄清楚如何为每个队列创建一个工作人员。 https://gist.github.com/486161 告诉我如何创建 X 工人,但并没有真正让我将工人设置为队列。如果我知道这一点,以及如何获取队列列表,我想我将走向可行的极限解决方案。
继续阅读
http://blog.winfieldpeterson.com/2012/02/17/resque-queue-priority/
我意识到我的计划充满了艰辛。第一个添加到工作人员的客户/队列将获得优先权。我不希望这样,我希望他们都拥有相同的。只要他们是同一个队列的一部分..
【问题讨论】:
标签: ruby-on-rails queue scheduled-tasks resque