你如何在Sinatra中选择你的HTTP服务器?

时间:2013-04-02 02:30:35

标签: sinatra rack thin webrick mongrel

我在本地运行Sinatra应用程序。

自从我安装了Thin之后,我的Sinatra应用程序总是将它用作Web服务器。但是,我一直在使用Thin提供应用程序所需的大量静态文件的性能问题,我想切换到Mongrel或WEBrick。

我似乎无法弄清楚如何将我的应用程序切换到Mongrel或WEBrick。即使我将require 'mongrel'require 'webrick'放在app.rb的顶部,在ruby app.rb上,Sinatra仍然以Thin开头。

所以,我的问题是:如何指定Sinatra的Web服务器在开发模式下使用?另外,我怎么能在生产模式下这样做?

1 个答案:

答案 0 :(得分:16)

您可以将Sinatra使用的服务器设置为:server configuration setting

set :server, 'webrick'  # or thin, mongrel

在制作中,使用更复杂的服务器(如Phusion PassengerUnicorn)要好得多,因为它们的性能优于Thin,Mongrel或WEBrick。如果您选择Passenger或Unicorn,则不会在Sinatra应用程序文件本身中配置服务器,而是通常使用Rackup config.ru文件单独配置它。

" Ruby on Rails Server options"是针对Rails应用程序,但仍然与Sinatra应用程序非常相关。