1

我有点困惑,因为我没有设置任何工作程序(在 Heroku 上),当我做 Resque.enqueue 时,作业被添加到队列中(但未完成),所以我假设主线程生成了队列。

由于我使用的是 Redis To Go,这不会破坏使用像 Resque 这样的后台进程的目的,因为 Redis To Go 本身就是一个外部托管数据库,因此主线程将作业添加到队列的初始写入过程可以不可预测?

4

1 回答 1

2

调用时发生的情况Resque.enqueue是 Resque 连接到 Redis 数据库,并添加稍后调用作业所需的信息。然后,worker 连接到 Redis,弹出第一个添加的作业,然后重复。

所以是的,“主”线程确实连接到 Redis。它是一个外部数据库这一事实并不重要。我的意思是,对于使用 Mongo 数据库插件的人来说,Mongo 数据库也是外部托管的。这个想法是,您要执行的作业比将其添加到 Redis 所需的时间更长。

于 2011-07-09T20:23:41.620 回答