【问题标题】:How does touch tmp/restart.txt actually work?touch tmp/restart.txt 是如何工作的?
【发布时间】:2017-09-28 20:26:35
【问题描述】:

我看到这里有人说要触摸 tmp/restart.txt 来重新启动 Rails 服务器,但我很想知道这实际上是如何工作的。 restart.txt 是 tmp 文件夹中的一个空文件,那么 Rails 是如何知道触摸该文件时要重启服务器的呢? IE。允许此功能工作的代码在哪里,因为它不在 restart.txt 中?

【问题讨论】:

  • 代码当然在服务器中。详细信息取决于您使用的服务器。但是像这样的功能通常通过轮询来工作:stating 文件大约每秒一次。如果文件存在且其最后修改时间晚于服务器启动时间,则重新启动。或者,操作系统可以注册回调以接收文件系统更改通知,但没有独立于操作系统的标准 afaik。

标签: ruby-on-rails server


【解决方案1】:

如果您查看config/spring.rb,您会看到Spring 已配置为观看此文件。我相信默认设置是每 2 秒轮询一次。

Spring.watch(
  "tmp/restart.txt",
  "tmp/caching-dev.txt"
)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-10-31
    • 2011-12-10
    • 2018-10-28
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多