所以我有两台服务器。
服务器 A:有 redis、ruby + resque gem + rake gem 服务器 B:有 ruby on rails + resque gem
从服务器 BI 将作业排队到服务器 A 上的 Redis。服务器 A 接收作业:
*** Found job on test
*** got: (Job{test} | TestQueue | [])
*** Running before_fork hooks with [(Job{test} | TestQueue | [])]
*** resque-1.23.1: Forked 10388 at 1362750385
*** Failed to start worker : #<NameError: uninitialized constant TestQueue>
所以我认为工作需要在服务器 A 上运行。所以我把工作移到了那里。但是,当我从服务器 BI 入队时,得到以下信息:
rails console
Loading development environment (Rails 3.2.12)
irb(main):001:0> Resque.enqueue(TestQueue)
NameError: uninitialized constant TestQueue
我让它工作的唯一方法是当我在两台服务器上都有工作时,但这远非理想。
如何解决远程排队工作?