【问题标题】:Lighttpd or thin for railsLighttpd 或 Thin 用于导轨
【发布时间】:2012-04-24 16:13:41
【问题描述】:
我目前正在 Heroku 上运行一个简单的 Rails 应用程序。但是,它似乎真的很慢。可能是因为我的 rails 应用程序配置为在 Webbrick 上运行?
我环顾四周,听说了“瘦”和“lighttpd”。
这些网络服务器有什么区别?当涉及到 rails 时,lighttpd 是一个选项吗? - 运行我的 Rails 应用程序会不会更好,因为它是基于 ruby 的?很抱歉问题的数量,对网络服务器不是很技术。
【问题讨论】:
标签:
ruby-on-rails
webserver
lighttpd
thin
【解决方案1】:
您的问题有点泛滥,所以我会回答主题,但目前无法提供技术帮助。
lighttpd 是一个 HTTP 服务器。它真的什么也没做。其他编程框架使用 FastCGI 来处理请求。 LighttpdOnRails 是关于设置 Rails 以在 lighttpd 上运行的精彩演练。如果您只使用 Rails,您可能需要其中一种替代方案,但 lighttpd 提供了其他人不具备的极大灵活性。 (自插式:我维护crosslight,这是一个使 lighttpd 安装和配置变得容易的工具。
Webbrick 是用于 Rails 应用程序的专用服务器组件。您的应用程序将其作为库包含,并自行启动。对于独立应用来说,这是一个很好的解决方案。
Thin 是一个专用的 servlet 容器。它是一个独立的软件,可以将您的代码作为库运行。它允许您的代码更加模块化,因为它负责配置所有内容。
如果您认真地认为 Webbrick 是您的性能瓶颈,那么您接下来可能会想尝试 Thin。如果它仍然运行缓慢,并且您想尝试一下 ligghtpd,那就试试吧,但那时它可能是您的应用程序。
对于没有对性能问题给出更具体的答案,我深表歉意,但希望这能解决处理这些工具的更大问题。
【解决方案2】:
如果您将 Rails 应用程序部署到 Heroku,
确保添加
gem "thin"
到你的Gemfile。
这是一件很容易忘记的事情,但它会产生很大的不同。