Rails 2.2 and Connection Pooling
C・ナッターのスレッドセーフRailsに関するブログ記事が大きな話題になっていますが、まもなくそのスレッドセーフであるRails2.2が登場します。
この2.2からスレッドセーフになることにより、以前取り上げた通り、従来まではActiveRecordではデータベース接続が1つで使い回していたものが、コネクションプーリングを行うことができるようになるようです。
2.2からはdatabase.ymlにpoolパラメータが追加され、以下のような設定でプール数を設定可能になります。
development:
adapter: mysql
username: root
database: myapp_dev
pool: 10
ナッターの文章にもありますが、スレッドセーフになることにより、JRubyを使えば、RubyのスレッドはJavaを経由してカーネルネイティブスレッドへと展開されるため、従来よりはるかに高いスケーラビリティを得ることができるようになるはずです。またJDBCのコネクションプールをJRubyから使うことにも意味が出てきて、より信頼性が高く、効率的になるはずです。
2008/09/08 by Tomo Nozawa
« v8 for Google Chrome | メイン | NeverBlock for MySQL »