monolog

2013年2月の投稿

FreeBSD Programming

mod_mruby on FreeBSD

mod_mrubyをFreeBSDで動かそうとして詰まるの修正点が変わってしまったのと、mod_mrubyが更新されてEvent MPMとWorker MPMでも動くようになったようなので再チャレンジしてみました。

FreeBSDでのmakeのやり方がまた変わってしまったので後述します。
とりあえずベンチマークの結果から。

検証機のスペック: IBM ThinkCentre A55 (9636-A16)
CPU: Core2 duo E6300@1.86GHz
RAM: DDR2-SDRAM 1GB
LAN: Broadcom Gigabit Ethernet
Apache/2.2.23 (FreeBSD), mod_fcgid/2.3.6

Varnish(3.0.3)がリバースプロキシとして動いているので参考値であることをご了承ください。

abの条件は前回と同じく下記の通りで、3回計測して平均を取っています。

Type req/s
Plain Text 6318.693
Ruby 1.9.3p194(mod_fcgid) 5159.423
mod_mruby 6700.153 4626.193

な……何故か、FastCGIのrubyに負けてますが、このような結果となりました。

2013/2/17 21:15追記:
mod_mrubyの作者である @matsumotory さんがこんな事を仰っていたので最新版をビルドし直して再測定しました。は、速い…

mod_mrubyはApacheのモジュールとかを書くのに面白く使えそうなので、そちらの道を模索してみたいなぁ……と

FreeBSDでmod_mrubyを使うためには、またちょこっと弄る必要があるみたいです。

mruby本体のビルド設定に-fPICを付ける。

makeではなくgmakeを使う。

この2点だけです。エラーが読めない人間には辛い……
もう httpd.conf が mod_mruby を読み込むよう設定されているはずなので、 Apache を再起動させれば終わりです。