5

在 REE 和 MRI 1.9+ 中,可以调整 ruby​​ 的垃圾收集器:

但是这些文章都没有说明在哪里放置这个配置。我想如果它在环境中,红宝石会在它启动时捡起它——但是,据我所知,没有办法检查它。这些设置没有显示在我能找到的任何运行时常量中。

那么,我应该把这个配置放在哪里,我怎样才能仔细检查它是否正在被使用呢?

4

1 回答 1

1

这些设置是环境变量,因此您只需在ruby进程本身的父进程中设置它们。许多 建议为此目的创建一个简单的 shell 脚本,或许可以称之为/usr/local/bin/ruby-custom

#!/bin/bash
export RUBY_HEAP_MIN_SLOTS=20000
export RUBY_HEAP_SLOTS_INCREMENT=20000
...etc...
exec "/path/to/ruby" "$@"

前几行设置您想要的任何自定义变量,最后一行调用ruby自身,将脚本最初给出的任何参数传递给它。

接下来,您需要将此脚本标记为可执行chmod a+x /usr/local/bin/ruby-custom文件ruby

PassengerRuby /usr/local/bin/ruby-custom
于 2013-03-26T17:03:09.390 回答