我在服务器上安装了Ruby 2.1.5,并且需要配置GC调整变量以实现最佳/最佳Ruby性能。
以下是硬件/软件信息信息:
根据此链接(http://tmm1.net/ruby21-rgengc/),我发现了约476K个长期存在的对象(使用
GC.stat(:heap_live_slot)
),因此我分配了RUBY_GC_HEAP_INIT_SLOTS=500000
但是其余的变量呢(如下所述)呢?这些变量的适当值应该是多少?我应该在我的环境/服务器中分析什么(以及如何)以找到这些变量的适当值?
RUBY_GC_HEAP_FREE_SLOTS=?
RUBY_GC_HEAP_GROWTH_FACTOR=?
RUBY_GC_HEAP_GROWTH_MAX_SLOTS=?
RUBY_GC_MALLOC_LIMIT=?
RUBY_GC_MALLOC_LIMIT_MAX=?
RUBY_GC_MALLOC_LIMIT_GROWTH_FACTOR=?
RUBY_GC_OLDMALLOC_LIMIT=?
RUBY_GC_OLDMALLOC_LIMIT_MAX=?
RUBY_GC_OLDMALLOC_LIMIT_GROWTH_FACTOR=?
RUBY_GC_HEAP_OLDOBJECT_LIMIT_FACTOR=?
如果需要任何其他信息,请告诉我!
最佳答案
如何分配这些值?
通过env变量,例如:
RAILS_ENV=production RUBY_GC_MALLOC_LIMIT=90000000 bundle exec thin start
export RUBY_GC_MALLOC_LIMIT=90000000
...
(如果我误解了这个问题,而您实际上的意思是“我可以为这些值分配什么?” Have a loook here和here。)
关于ruby-on-rails - Ruby 2.1.5-GC调整,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/28320250/