gpt4 book ai didi

ruby-on-rails - 默认情况下,Rails是否具有“零”并发性?

转载 作者:行者123 更新时间:2023-12-03 13:17:50 27 4
gpt4 key购买 nike

我正在使用Rails的一些中间件,使用的是最新版本:

pfernand-2-mn:~ pfernand$ rails -v
Rails 3.1.2

这是 rake middleware的输出:
use ActionDispatch::Static
** use Rack::Lock **
use ActiveSupport::Cache::Strategy::LocalCache
use Rack::Runtime
use Rails::Rack::Logger
use ActionDispatch::ShowExceptions
use ActionDispatch::RemoteIp
use Rack::Sendfile
use ActionDispatch::Callbacks
use ActiveRecord::ConnectionAdapters::ConnectionManagement
use ActiveRecord::QueryCache
use ActionDispatch::Cookies
use ActionDispatch::Session::CookieStore
use ActionDispatch::Flash
use ActionDispatch::ParamsParser
use Rack::MethodOverride
use ActionDispatch::Head
use ActionDispatch::BestStandardsSupport
run MyApp::Application.routes

关键是第二个组件 Rack::Lockas far as I know,这是一个 互斥体,它包裹了整个Friging rails stack(!)

这是否意味着无论您使用什么平台,Rails都不会并发? (我正在使用JRuby)。

我知道我可以使用以下方法删除锁:
config.middleware.delete(Rack::Lock)
但是可悲的是,这破坏了一切。这是否意味着我的应用程序不是线程安全的?

最佳答案

您应该在config/environments/production.rb中看到以下条目

  # Enable threaded mode
# config.threadsafe!

在JRuby或其他线程友好的环境中取消注释即可以线程安全模式进行部署。

关于ruby-on-rails - 默认情况下,Rails是否具有“零”并发性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9979442/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com