我使用的是Windows 7和Rails 3。在本地开发模式下,rails server
不能同时处理多个请求。进程会崩溃,命令提示符会出现在前面。
我注意到这种行为发生在以下情况下:
- 有太多的ajax请求,而且请求之间太接近
- 在2个浏览器上加载一个简单的页面
有没有解决方法?更改本地服务器(默认为webrick)?怎么做?
谢谢。
我使用的是Windows 7和Rails 3。在本地开发模式下,rails server
不能同时处理多个请求。进程会崩溃,命令提示符会出现在前面。
我注意到这种行为发生在以下情况下:
有没有解决方法?更改本地服务器(默认为webrick)?怎么做?
谢谢。
gem 'puma'
来实现这一点,然后您需要将config.threadsafe!
添加到您的config/application.rb
或您正在运行的环境文件(例如config/environments/development.rb
)中。
有时您可能不希望启用线程安全,因此我在我的development.rb
文件中添加了以下代码:
if ENV["THREADS"]
config.threadsafe!
end
rails s Puma
,它将运行最多16个线程,并可以处理多个请求。您还可以通过Puma提高线程池的效果并进行更多配置,文档在此处。
config.threadsafe!
,并且我相信它已经被弃用了。你需要安装 Mongrel gem 并指定在运行 rails s
时要使用哪个服务器。
我不知道你们在 Windows 系统上怎么做,为什么不运行一个虚拟的 Unix 系统呢?在 Unix 上使用 Rails 不是更容易吗?所以在 Unix 上是这样的:
安装 Mongrel gem:
gem install mongrel
然后指定想要运行的服务器:
rails server mongrel