netweiandwinnie 2011-11-15 19:35
浏览 243
已采纳

请问,在Rails应用中 如何 监听Startup 和Shutdown?

请问,在Rails应用中 如何 监听Startup 和Shutdown?

就像在 java web应用中使用servlet 的 listener一样,我需要在 Rails 中 监听 应用的启动和关闭,

请问应该怎么实现呢?

我知道,把一个 .rb文件 放在 APP\config\initializers 目录下,Rails启动时会自动运行它,权且当这是 监听应用Startup的方法吧,
那么 Shutdown 呢?在开发模式下,我总是 使用 Ctrl + C 结束 Rails应用, 我不知道 有什么好的方法能让我抓到 应用被关闭的事件。

请熟悉 Rails 的朋友 给点建议。

难道是我的想法错了么? Rails 和 Java在处理此需求时的方法 有什么不同吗?
我相信在Rails中应用中也会有像servlet listener那样的需求场景,Rails是如何应对的呢?

我一定要等到这个问题 有解决方法。 :shock:

  • 写回答

5条回答 默认 最新

  • java_ldc 2011-11-24 15:23
    关注

    1.启动,在/config/initializers 下创建一个文件,然后监听rails的启动。
    2.同样在该目录下 重写 Ruby Kernel 的一个方法(at_exit) 去监听 rails 的关闭。

    A.文件名:awe_servlet_context_listener.rb
    B.文件内容如下:
    puts 'start......~~~~~~~~~~~~~~~~~~~~~~~~'
    at_exit do
    puts 'bye...~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~'
    end
    C.存放目录 /config/initializers

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(4条)

报告相同问题?

悬赏问题

  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 对于相关问题的求解与代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 信号傅里叶变换在matlab上遇到的小问题请求帮助
  • ¥15 保护模式-系统加载-段寄存器
  • ¥15 电脑桌面设定一个区域禁止鼠标操作