我正在试验“异步rails",以帮助减轻使用缓慢的第三方服务的痛苦。
Gemfile
gem 'eventmachine'
gem 'rack-fiber_pool', :require => 'rack/fiber_pool'
gem 'em-synchrony', :require => ['em-synchrony',
'em-synchrony/em-http',
'em-synchrony/activerecord']config.ru
require ::File.expand_path('../config/environment', __FILE__)
use Rack::FiberPool, :size => 6
run MyApp::Application有人知道在Heroku的雪松堆栈上可以使用多少Ruby纤维吗?或者如何决定这样一件事?
发布于 2013-04-09 21:20:24
像你一样,我目前正在试验红宝石和纤维,以提高应用程序的性能。根据我读过的书和我想要记住的,你可以使用的纤维数量几乎是没有限制的。
我想记住(请自己检查一下),每个dyno最多可以消耗500 Mb的RAM。每一个光纤增加几kb (我想2kb)到你的应用程序的RAM使用。只要您的应用程序不使用完整的500 be,您应该是好的,即使有1000纤维。
但是您应该在此之前达到性能/并发边界,因为您的应用程序一次只处理一个光纤。在您的情况下,它将取决于外部服务。
https://stackoverflow.com/questions/15237287
复制相似问题