Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Webサービスの高度化に耐えうる基板設計に関する研究

 Webサービスの高度化に耐えうる基板設計に関する研究

ICTイノベーション2013 オーラル発表

MATSUMOTO Ryosuke

February 19, 2013
Tweet

More Decks by MATSUMOTO Ryosuke

Other Decks in Technology

Transcript

  1. 研究の背景 • Webサービスの高度化に耐えうる基盤設計 – 複数ホストを効率良くサーバに収容する設計 • Webホスティング、SaaS、PaaS → マルチテナント環境 1.

    Webサービス開発環境を安価で容易に提供 – Webサービスの多様性を促進 2. サービス提供ホストを効率よくサーバに収容したい – 単一のサーバプロセスで複数のホストを仮想的に処理 – 仮想ホスト方式の採用(例:ApacheのVirtualHost) 3. 大規模運用での仮想ホスト方式の課題を解決 – 高セキュリティ、機能拡張が容易、リソース管理可能 3
  2. 本研究 • Webサーバの仮想ホスト基盤設計に必要な要素 1. 運用と機能拡張の支援[1] → mod_mruby 2. セキュリティと性能の両立[2]→ mod_process_security

    3. リソースの分離[論文執筆中] → mod_resource_manager 4. 大規模・高集積・運用[3] → インフラ設計 – 大規模・高集積かつ高いセキュリティと性能を両立 – 運用性も高く、Webサーバの機能拡張も容易 [1] 松本亮介・岡部寿男, 組み込みスクリプト言語mrubyを利用したWebサーバの機能拡張支援機構, 情報処理学会研究報告 Vol.2012-IOT-18, No.6, 2012年6月. [2] Ryosuke Matsumoto, Yasuo Okabe, Access Control Architecture Separating Privilege by a Thread on a Web Server, The 12th IEEE/IPSJ International Symposium on Applications and the Internet (SAINT2012), pp.178-183, July 2012. [3] 松本亮介, 川原将司, 松岡輝夫, “汎用性の高い大規模共有型Webバーチャルホスティング基盤のセキュリティと運用技術の改善”,情報処理学会論文 誌,Vol.54, No.3, (2013-3 掲載予定). 4
  3. mod_mruby 5 • mruby – 組み込み機器やアプリ組み込みに特化した言語 – C言語でかかれたホストアプリをRubyでコントロール可能 • mod_mruby

    1. Apacheにmrubyを組み込んでRubyでApacheをコントロール 2. 高速かつ軽量に動作 3. Linux、FreeBSD、Windows等で動作可能 • mod_mrubyの利用例 – オリジナルのリバースプロキシ – 複雑な条件によるリダイレクト処理 – 認証やアクセス制御、suEXEC – Web API – ApacheモジュールをRubyで書ける 詳しくは研究ブログ http://blog.matsumoto-r.jp/
  4. mod_hello (C言語) mod_mruby (本研究) Index.html (静的コンテンツ) 言語 C言語 mruby html

    性能 (Response/sec) 14662.33 14578.28 11158.17 1. Hello Worldを出力するだけのApacheモジュールを作成 2. 同時接続数100、総接続数10万でベンチマークを実施 3. 1秒間に処理できたリクエスト数を計測 mod_mruby • mrubyの呼び出し処理はほとんどボトルネックにならない • 文字列出力処理においては静的コンテンツと同等の性能 • nginx用のngx_mrubyも開発中