【问题标题】:What's the difference between a rake task and a worker class?rake 任务和工人阶级有什么区别?
【发布时间】:2015-04-26 07:44:51
【问题描述】:

我希望我的问题有意义,我不是 Rails 人,我开始寻找现有项目来学习。

该项目使用“工人”在后台发送有关某些事件的电子邮件。特别是有一封电子邮件是使用 rake 任务发送的。据我所知,发送给工人的电子邮件没有区别,在我看来它也可能是工人。

使用自定义 rake 任务而不是工人有什么区别?工作人员无法完成的 rake 任务可以做什么?

【问题讨论】:

    标签: ruby-on-rails ruby rake


    【解决方案1】:

    Rake 任务通常由您在命令行中输入。 Worker 作业通常由正在运行的应用程序启动。然后后台工作人员在适当的时候接手并运行它。

    根据您的任务,可以同时使用两者,区别可能在于谁应该执行。从应用程序运行 rake 不是一个好主意,但可以(通过 shell 命令)。

    【讨论】:

    • 不可能安排一个 rake 任务然后就等同于 worker 工作吗?
    • 是的,您可以安排一个运行 rake 任务的 shell 命令,但这不是一个好主意。很难调试,你可能在执行任务时遇到问题,因为在路径中找不到 ruby​​ 或 rake,权限问题,如何处理错误等。最重要的是,这实际上是一项双重工作,因为可以将相同的工作提取到某种三等舱,而 rake 和 worker 都只会这样称呼。
    猜你喜欢
    • 2014-11-07
    • 2013-04-28
    • 2011-03-05
    • 2015-05-25
    • 1970-01-01
    • 2012-04-30
    • 1970-01-01
    • 1970-01-01
    • 2017-02-10
    相关资源
    最近更新 更多