为什么 Rails 应用程序有一个单独的“unicorn_rails”?

为什么 Rails 应用程序有一个单独的“unicorn_rails”?

根据 Unicorn 文档,Rails 应用程序和其他 Rack 应用程序有不同的二进制文件:

non-Rails Rack applications

In APP_ROOT, run:

    unicorn

for Rails applications (should work for all 1.2 or later versions)

In RAILS_ROOT, run:

    unicorn_rails

它们似乎也采用相同的命令行参数。但 Rails 是在 rack 之上构建的,所以我不明白为什么需要这种二分法。有什么原因不能只用于unicornRails 应用程序吗?

答案1

来自 unicorn 文档,

它旨在帮助 Rails 1.x 和 2.y 用户过渡到 Rack,但 Rails 3 应用程序不需要它。鼓励 Rails 3 用户使用 unicorn(1) 而不是 unicorn_rails(1)。Rails 1.x/2.y 用户也可以使用 unicorn(1) 而不是 unicorn_rails(1)。

http://unicorn.bogomips.org/unicorn_rails_1.html

所以,不,你根本不需要使用它。

值得一提的是,Rails 直到版本 2 后期才过渡到 Rack(我忘了)。因此,当 Unicorn 首次发布时,可能仍有大量应用程序需要支持。

相关内容