【问题标题】:Daemon Start at the application bootup应用程序启动时启动的守护程序
【发布时间】:2011-05-18 02:58:26
【问题描述】:

我有一个应该在我的 rails 应用程序后面运行的守护程序,它可以进行数据库修改。我使用 ruby​​ daemons gem 实现了该守护程序。我想在我的应用程序开始时启动该守护程序。每当我的应用程序启动时,我都需要启动该守护程序。

我该怎么做?

【问题讨论】:

    标签: ruby-on-rails ruby


    【解决方案1】:

    如果必须在 Rails 初始化期间启动它:

    1. 创建一个将启动守护进程的 ruby​​ 文件。说invoke_daemon.rb
    2. 将此文件放入config/initializers/invoke_daemon.rb

    但是,如果它不是强制性的,我建议创建一个二进制可执行文件或rake 任务并通过命令行手动启动它。这样,它作为一个单独的进程运行。您可以简单地将其添加到生产盒的部署脚本中,并在开发盒上手动运行它。一些例子是searchdsphinxthinking_sphinx:delayed_delta rake 任务的搜索守护进程来自thinking_sphinx

    【讨论】:

      【解决方案2】:

      根据您的知识,您必须查看 Rails Life cycle

      我刚刚实现了这个东西。我已经在 Windows7 上实现了。
      我创建了一个批处理文件,比如说 my_batch.bat,其中包含 ruby​​ 命令,即 ruby my_daemon.rb 文件。
      此外,为了在我的应用程序启动时执行此文件,我刚刚在 environment.rb 文件中添加了一条语句来执行该批处理文件。即系统(“my_batch.bat”)。
      但我不确定这是否是实现此任务的好方法。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-11-20
        • 1970-01-01
        • 2014-05-13
        • 1970-01-01
        • 1970-01-01
        • 2017-02-27
        相关资源
        最近更新 更多