OracleAS Web Cache事例「キャッシュでサイト障害を克服、DBサーバーの負荷を1/9に」

satonaoki2005-01-24


Webキャッシュ・サーバ「Oracle Application Server Web Cache 10g」をお使いいただいているサードウェーブ様の事例記事が、日経システム構築 2005年1月号に掲載されています。(Web Cacheは、Oracle Application Server 10g Standard Editionに含まれています。)

アプリケーション・サーバとクライアント (Webブラウザ) との間に配置されるWeb Cacheは、Webコンテンツ (HTML、画像などHTTPレスポンスで返されるものなら何でも) をキャッシュすることで、Webアプリケーションのパフォーマンス向上、データベース・サーバやアプリケーション・サーバの負荷軽減などのメリットを得ることができます。

静的コンテンツのみならず、動的コンテンツ (たとえばJSPで生成したWebページ) もキャッシュできます。動的コンテンツの場合、(有効期限ベース、無効化メッセージ送信など) キャッシュ済みコンテンツを無効化する方法がいくつかあるので、古いコンテンツを表示してしまうこともありません。サードウェーブ様の事例では、動的コンテンツ生成にPHPを使用しています。

また、Web Cacheの後方に位置するアプリケーション・サーバは、Oracle Application Server 10gである必要はなく、他社やオープンソースのアプリケーション・サーバであっても構いません。サードウェーブ様の事例では、Apacheをを使用しています。

複数のアプリケーション・サーバの手前に1台のWeb Cacheを配置することで、Web CacheをWebキャッシュ・サーバ兼ソフトウェア・ロード・バランサとして使うこともできますし、大規模サイトではWeb Cache自体を複数台配置することもできます。サードウェーブ様の事例では、アプリケーション・サーバ 3台、Web Cache 2台、(冗長構成の)ハードウェア・ロード・バランサ 1台という構成になっています。

動的コンテンツをキャッシュする場合でも、Webアプリケーションに手を入れる必要がない場合が多いのも、Web Cacheのメリットの1つです。つまり、既存のWebシステムに手を加えることなく、その手前にWeb Cacheを配置するだけで、簡単にWebアプリケーションのパフォーマンス向上やサーバの負荷軽減といったメリットを享受できる、ということです。(キャッシュの効率を向上するために、多少の修正が必要となる場合もあります。)

Webアプリケーションのパフォーマンス悪化やサーバの負荷増大にお悩みの方は、Web Cacheをぜひご検討ください。ご質問やご相談は、お気軽にOracle Directまでどうぞ。(手前味噌ですが) 優秀なエンジニア&営業チームが対応させていただきます。実は、サードウェーブ様の事例も、きっかけはOracle Directへの相談でした。