@IT|@IT自分戦略研究所|QA@IT|イベントカレンダー+ログ | ||
Loading
|
@IT > 逆PROXY型Webサーバ拡張システム |
企画:アットマーク・アイティ
営業企画局 制作:アットマーク・アイティ 編集局 掲載内容有効期限:2005年9月30日 |
|
|
「既存のシステムを変更せず、定型的な処理はローカルのユーザーに近い装置で吸収する1つのアプローチといえる。実際に開発されるメカニズムによっては、セントラルサーバの問い合わせの頻度は少なくなる」(酒井裕司PM)
企業の情報システムやインターネットのWebアプリケーションで問題になるのが、パフォーマンスの低下。企業の場合は、朝や月末にトラフィックが集中し、Webアプリケーションの反応が悪くなる。インターネットの電子商取引サイトなどではキャンペーンを告知した直後にアクセスが集中し、ユーザーがなかなかサービスを受けられないということが多い。 Webアプリケーションのパフォーマンスが低下した場合の対策として多いのは、サーバやネットワークの増強。システムのリソースを増やすことで可用性を上げる考えだ。しかし、この対応ではサービスの成長、拡大に従って直線的にハードウェアやインフラのコストが増えるという問題がある。また、四半期に1度、月に1度などのピーク時のトラフィック集中に合わせてシステムを増強すると、そのほかの期間はシステムのリソースが余ってしまう。これでは効率的な投資とはいえない。 問題を解決するもう1つのアプローチとして考えられるのはクライアント側に機能を持たせて、サーバ側の処理を代行させるリッチクライアントの利用だ。クライアント側で主な処理を行うためサーバに対するトラフィックが減少し、サービスがスムーズになる。ただ、リッチクライアントの課題は、導入によってシステム構成に大きな変更が加えられること。システム構築に時間、コストがかかる。
未踏プロジェクトに採択された大村研治氏のプロジェクト「逆PROXY型Webサーバ拡張システム」は、Webサーバ、Webアプリケーションのパフォーマンス低下を解決するシステムとして考え出された。サーバとクライアントの間に逆PROXY(リバースProxy)として動作するサーバを設置し、このサーバにセントラルサーバの処理の一部を代行させる。 逆PROXYサーバに代行させる処理は(1)アカウント認証代行機能、(2)トラフィック分散機能、(3)SSL接続デコード機能、(4)不正リクエスト排除機能の4点。アカウント認証代行機能は、設定で指定したディレクトリ以下へのアクセス認証の処理をフォーム型で代行する。認証状態を接続元のIPアドレス、Cookieによって管理し、タイムアウトによる切断を可能にする。認証に成功したIDなどのデータはHTTPヘッダに追加してWebサーバに通知する。 トラフィック分散機能では、トラフィックの状態やサーバのダウン状況に応じて複数のWebサーバ間で接続先を自動で変更する。CGIスクリプト言語実行によるWebサーバの遅延や、ストレージへのアクセスによる遅延の軽減にもつながり、パフォーマンスの向上を実現する。 SSL接続デコード機能はSSLを使ったクライアントからのリクエストをエンコードし、Webサーバに転送する機能。通常はWebサーバ側で行うSSLのデコードを代行する。証明書の集中管理により、証明書の無駄な重複を防いで効率的に活用できる。また、不正リクエスト排除機能では、Webサーバに達する前の逆PROXYの段階で、クライアントからのワームなどを排除する。 未踏プロジェクトのプロジェクト・マネージャ 酒井裕司氏は「逆PROXY型Webサーバ拡張システム」について、「既存のシステムを変更せず、定型的な処理はローカルのユーザーに近い装置で吸収する1つのアプローチといえる」と指摘。「実際に開発されるメカニズムによっては、セントラルサーバへの問い合わせの頻度は少なくなる」と評価した。 逆PROXYサーバを使ってセントラルサーバの処理を軽減する考えは新しくない。酒井氏も「この手のソリューションは、技術的に固まることで導入しようと思う企業が出てくるだろう。機能が実現できれば商業的にも売りやすい」と指摘。そのうえで「このシステムがオープンソースとして開発されるのが重要といえる」と述べ、開発工程が公開されることで、ニーズの汲み取りや課題の発見が可能になるとの考えを示した。 ◆「オープンソースによる開発実験プロジェクト」トップページに戻る |
|