PR

性能比較!WEBrick vs. Apache

2008年8月26日(火)
masuidrive

セキュリティーと速度性能

本連載の第3回までで説明したように、WEBrickは自分でコードを書くことで、かなり高性能なHTTPサーバーたり得ることが分かりました。

では、HTTPサーバーとして実際に運用するのはどうでしょうか?サーバーを公開する上で気になるのは、セキュリティーと速度性能です。

実は、2008年8月8日にRubyに複数の脆弱(ぜいじゃく)性が発見されました。WEBrickもDoS脆弱性が報告され、外部からWEBrickのサイトを停止させることが可能でした。しかし、この脆弱性は最新版のRubyで修正されているため、現在のバージョンでは問題はありません。

実際に運用するにあたっては、こうした脆弱性については常に注意し、発見された場合は速やかにアップデートやパッチによる対応をする必要があります。

速度性能については、2ページ目以降で実際にWEBrickとApacheの性能評価を行い、2つを比較することでWEBrickの特徴を解説していきます。

アプリケーションへの組み込み

さて、WEBrickを使うことで、HTTPサーバーやプロキシを手軽に作れることは分かりましたが、実際に自分でこれらを作るケースはあるのでしょうか?

一番の用途は、アプリケーションに組み込んで配布することでしょう。

現在、多くのWebアプリケーションのソースが公開されています。しかし、このアプリケーションを自分で動かす場合、HTTPサーバーやデータベースなどのインストールが必要になり、通常のデスクトップアプリケーションのようにワンクリックでインストール、稼働という訳にはいきません。場合によっては、既存のソフトとのバージョン競合でインストールが困難なケースもあります。

しかし、WEBrickとRubyで書いたアプリケーションであれば、別にHTTPサーバーを必要としないため、Rubyがインストールされている環境であれば、非常に手軽に稼働させることができます。

さらに、exerbRubyScript2Exeなどのソフトウエアを使うと、WEBrickも含めてRubyスクリプトをexeファイル(Windowsの実行形式)にすることができます。こうすれば、Webアプリケーションながら、ワンクリックで稼働させられる環境を提供できます。

大規模なアプリケーションではなく、個人・少人数で使うようなアプリケーションの場合、WEBrickとRubyスクリプトでアプリケーションを配布すると、非常に手軽に使ってもらえるでしょう。

では、次ページ以降いよいよApacheとの性能比較を行っていきましょう。

PukiWikiなどのオープンソース活動を経て、2005年からRuby on Railsに的を絞り、WEB2.0社 PingKingやニフティ アバウトミーの開発に関わる。これまでのフリー活動から転身し、2007年は1年だけ会社員として働いた後、起業のため渡米。2008年4月にBig Canvas Inc.設立。現在、米ベルビュー在住。http://bigcanvasinc.com/http://blog.masuidrive.jp/

Think IT会員サービス無料登録受付中

Think ITでは、より付加価値の高いコンテンツを会員サービスとして提供しています。会員登録を済ませてThink ITのWebサイトにログインすることでさまざまな限定特典を入手できるようになります。

Think IT会員サービスの概要とメリットをチェック

他にもこの記事が読まれています