我正在处理一个有时会互相交谈的多个项目,但我遇到了一个应用程序问题
request 1
,仍在运行) request 2
) request 2
的结果,B响应请求1 这需要我在开发模式下运行多线程 rails。
我知道我可以使用 puma 或类似的东西来设置它,但是......真的没有更简单的方法吗?
我想避免更改项目中的任何内容(添加 gem、配置文件..)。
像
rails s --multi
会很好,不能webrick
只是使用多个线程运行或产生更多进程?我可以安装一个独立的 gem 来做我需要的事情并运行类似
thin run . -p 3
的东西吗? ?
最佳答案
puma Web 服务器可以提供绑定(bind)到单个本地地址的多线程和多个工作人员。
bundle add puma
或者
gem install puma
config/puma.rb
添加 puma 配置文件:workers 1 # 1 worker in addition to master instance (i.e. handle 2 requests concurrently).
preload_app!
bundle exec rails s
Puma 自动启动并在配置文件中加载
config/puma.rb
. 提高
workers
的值如果您需要同时处理 2 个以上的并发请求。
关于ruby-on-rails - 如何在开发中运行 Rails 多线程?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45311053/