Phoenix的独立Exq

时间:2017-04-02 19:11:55

标签: elixir phoenix-framework

可以将exq作为独立应用运行https://github.com/akira/exq#standalone-exq。但问题是,我并不真正理解如何使其发挥作用。如果将exq添加为我的凤凰应用程序的依赖项,则在运行我的应用程序时它已经在运行。我可以将工作排队,然后他们就会开始工作。所以我的问题是如何不与我的应用程序一起运行它,而是将其作为单独的应用程序运行? (例如,因此可以在Heroku上的单独工作人员上运行它。)

1 个答案:

答案 0 :(得分:3)

您是否正在尝试在凤凰应用中运行Exq,能够入队,但没有在该实例中运行作业?

有两种选择:

1)您可以将Exq设置为仅以Enqueuer模式启动。有了这个,你可以将它留在mix.exs中。为此,请更改配置:

config :exq,
    ...
    mode: :enqueuer,
    ...

然后您可以使用以下方式排队:

Exq.enqueue(Exq.Enqueuer, "default", HelloWorker, [])

2)您可以关闭队列,以便不会收听任何队列:

config :exq,
    ...
    queues: [],
    ...

您可以使用通常的方式排队Exq.enqueue(Exq, "default", HelloWorker, [])