Ruby 1.8.6-p230 と Rails の相性が悪くて困っている人は Ruby Enterprise Edition 使ったらいいと思います

Ruby 1.8.6-p230 と Rails の相性が悪くて困っている方をちらほらと見かけるので、一応紹介しておきます。そういう場合は Ruby Enterprise Edtion (以下REEと省略)を使うと良いですよ。

http://blog.phusion.nl/2008/06/23/ruby-186-p230187-broke-your-app-ruby-enterprise-edition-to-the-rescue/

REEってなに?どんな?と思う人は前に書いた記事を読んでみて下さい。結局この時はちゃんと調べきれなかったから、あんまり参考にならないのだけれども。

Ruby Enterprise Edition の利点と難点を考えてみました - ¬¬日常日記

まぁ早い話がなんか特殊な場面では速くてコンパクトらしいGC(正直 mongrel と passenser しか目に入ってなさそうだから、そうした環境にチューニングされているようなのですが、私はまだ未確認なので実力は未知数です。確かめた限りでは普通のプログラムはGCは速くならないしコンパクトでもありませんでした。)に加えて極めて保守的(Rails的な意味で)な立場でメンテやってますよ的な 1.8.6 系列のRuby実装です。

で、なぜ REE をすすめるかと言いますと、REE ならまず Rails で動かないという状況はないだろうし(だってそうでもないと存在価値がないじゃないですか)、脆弱性パッチは当たってるし、まぁ便利じゃないでしょうかということです。挙げた記事を読めば分かると思いますが p111 ベースで脆弱性問題はパッチをバックポートを当てて対応とのこと。素晴らしいと思います。さすがは Enterprise と大きく出ただけあります。

なお、Ramaze な人は世の中の世相を無視して 1.9 trunk で動かすのがベストだと思います。圧倒的に速くて軽くてVPSメモリ貧乏な人の味方!