Raspberry Piとは、世界中でとんでもなく売れている名刺サイズのワンボードマイコンで、その性能たるやLinuxを普通に動かせるほどの実力の持ち主です。
2ヶ月前に注文してようやくRaspberry Piが届いたので、早速動かしてみました。まずはmod_mrubyを動かすところまでです。mod_mrubyが動いたので、後はマイコンボードらしく、mod_mruby経由でGPIOを触ってLEDをチカチカさせたり、赤外線センサーやリモコンをつけたりして色々遊んでみたいです。ということで、まずはmod_mrubyが動くところまでを紹介します。
Arch Linuxのインストール
Raspberry PiにOSを入れるために、Raspberry Pi用のArch Linuxを落としてきて、imgファイルをddでSDカードに書き込みます。それだけで、OSのインストールは完了です。詳細はぐぐると出てくるのでここでは省略します。
その後、SDカードをRaspberry Piにさして、USB給電で起動させます。RegzaにHDMI出力してみました。
おおーすばらしい。ちゃんと起動してきました。
この後は、sshでログインして色々mod_mrubyが動くまでの作業を行います。
mod_mrubyが動くまでの環境設定
大体以下のパッケージを入れるとOKそうです。
pacman -S git
pacman -S gcc
pacman -S bison
pacman -S ruby
pacman -S apache
さすがArch Linux、簡単ですね。
mrubyとmod_mrubyのビルドしてブラウザからアクセス
適当にDEVディレクトリとかを作っておいて、
git clone git://github.com/matsumoto-r/mod_mruby.git
で、mrubyとmod_mrubyをダウンロードしてきます。
そして、mrubyディレクトリに移動して、mrubyとmod_mrubyをビルドしましょう
rake
cd ../mod_mruby
./configure --with-mruby-root=../mruby
make
make install
いつも打ちすぎて手が勝手に動いてしまいます。以下のようにmod_mrubyまでビルドします。
そして、Apacheのconfに以下のように書いて、
<Location /mruby>
sethandler mruby-native-script
mrubyhandlercode "Apache.rputs 'hello mod_mruby world on Raspberry Pi'"
</Location>
Apacheを起動します。そして、http://example.jp/mrubyにアクセスすると、
やりました、こんにちは!Raspberry Pi上のmod_mrubyの世界へ!
いつものベンチ
例のごとく、abコマンドで同時接続数10総接続数1000ぐらいでmod_mrubyでの文字列表示と、index.htmlによる文字列表示それぞれに対してベンチをとってみたところ、以下のような値になりました。
index.html表示
mod_mrubyによる表示
もはやこの領域では、単なる文字列表示において、ファイルI/Oさせなくてよいmod_mrubyの方が静的ファイルの表示よりもかなり高速であることがわかりました。
最後に
というわけで、無事Raspberry Pi上でmod_mrubyが動きました。カーネルがとても新しくcgroupも動きそうなのでmruby-cgroupを使ってとても楽しいことができそうです。
今後はマイコンボードらしくLEDチカチカ、赤外線ビュンビュン、ウォシュレット監視監視したいと思います。
1 Comments.