rails 4 个延迟作业 - 运行 根据请求的 url 或域延迟作业

rails 4 delayed job - Running Delayed Job according to the requested url or domain

我在其中一个处理延迟作业的应用程序中有一个要求。我 运行 两个应用程序使用一个数据库。

我在调用特定于域的延迟作业时遇到问题。

例如,假设我们是 运行 两个域名为 abc.com 和 xyz.com 的应用程序,使用单个数据库并从 abc.com 启动延迟作业并设置时间用于调用作业,因为来自 xyz.com 的请求在 abc.com 之前调用毫秒 来自 xyz.com 的作业正在启动并且作业 运行 错误 perameters.Here 我想要我们可以根据来自域的调用或请求 url 来调用延迟作业的解决方案。

任何人都可以在这方面帮助我,因为我被困在处理这种情况的可能性中。

提前致谢

您可以设置两个不同的延迟作业队列来分别处理每个域的作业,而不是将所有作业都放在一个队列中。

例如

object.delay(:queue => 'domain_one').method
object.delay(:queue => 'domain_two').method

然后您可以从这里 运行 两个单独的工作程序,它们可以分别为每个队列提供服务。

https://github.com/collectiveidea/delayed_job 包含有关如何将多个队列与 DelayedJob

一起使用的信息