我一直在寻找分布式后台工作的resque。 我设法通过演示应用程序在一台机器上运行一切。但我不知道如何设置一切,以便工人在不同的机器上运行。我读到工作人员必须连接到redis服务器。但我仍然不知道从哪里开始。 某处有逐步指导吗?我没有找到任何关于此的文件。
或者有人可以向我解释一下吗?
我不使用rails btw,我正在使用Sinatra。
THX
答案 0 :(得分:3)
是的,你是对的如果所有工人都可以访问redis,你可以将它们连接起来,将它们分发到不同的机器上
为此你需要工人连接到redis(我假设所有工人都可以使用)
现在在Resque连接到那个远程redis所有它必须做的就像这样
Resque.redis = "redis://[your host]:[your port]"
你也可以看到here
提到的内容也许在config/application.rb
希望这个帮助
答案 1 :(得分:0)
Redis安全指南建议将Redis服务器暴露给公共互联网是不安全的。因此,您最安全的选择可能是创建从每个工作机器到Redis服务器的SSH隧道。您可以在此处找到说明:
https://briandamaged.org/blog/?p=1675
一旦保护了Redis服务器并建立了SSH隧道,您的工作人员就可以通过访问localhost上的端口来连接到服务器。例如:
# Port 2000 is a tunnel to the Redis server
Resque.redis = "redis://localhost:2000"