アプライアンスの動向とWebサイトの最適化
Webサイトのネットワークを最適化するADC
最近、Webサイトのネットワークで中心的な役割を果たすようになっているのが、アプリケーション・デリバリー・コントローラー(ADC)と呼ばれるアプライアンスです。背景には、SNSをはじめとするコミュニケーション・ツールやオンライン・ショッピング、トレーディングなど、動的なコンテンツが増えてきたことがあります。クライアントからのリクエストに対して、アプリケーションやデータベースの複雑な連携が必要となり、アプリケーションに対するより高い適応性が求められているのです。
ADCの前身であるロード・バランサ(負荷分散装置)は、大量のクライアント・アクセスを安定して処理するために、Webサーバーやアプリケーション・サーバーへリクエストを分散させる機能を提供していました。このうえで、アプリケーションへの適応性向上の要求に応じて進化したのが今日のADCです。よりアプリケーションと密接に連携する動作、セキュリティ機能、遅延軽減、ネットワークやサーバーの負荷軽減などが求められ、搭載されてきました。
特にADCの機能強化を後押ししている最近の傾向として、3つの動向を紹介します。1つはWebアプリケーション通信処理の高速化です。アプリケーションの進化に伴って要求されるさまざまな機能を高速に処理するための多様な機能が実装されています。2番目はデータセンター対応です。SaaSやクラウド・サービスを提供するための機能が重視されています。3番目は仮想化環境への対応です。ネットワークとサーバー/アプリケーションの、より有機的な結合が求められています。
Webアプリケーション・トラフィックの高速化
Webコンテンツを動的に生成することによって、バックエンドのアプリケーションやデータベースとの柔軟な連携が可能となり、Webシステムとして大きなメリットが得られるようになります。ただしその反面、アプリケーションの肥大化とコンテンツの複雑化によるサーバー負荷がWebシステムの性能低下の原因となり、クライアントに対するレスポンス時間の悪化を招きます。
レスポンスを改善するための解決策としてまず考えられるのは、サーバーやストレージの追加や高性能化、ネットワークの増強といった性能強化策です。ところが、こうした増強策はコスト効果が問われます。一方、ADCでは、レスポンス問題を解決するためのさまざまな技術が投入されています(製品紹介ページはこちら)。
まず、多くのADC製品がSSL(Secure Sockets Layer)処理専用のハードウエア(SSLアクセラレータ)を搭載して、サーバーの負荷を軽減するとともに、SSL通信の処理速度を飛躍的に向上させています。これは、個人情報など秘匿性の高いデータが増加するのに伴って、これらのデータを安全にやり取りするSSL通信に、非SSL通信と同等の性能が求められているためです。
ADCはまた、アプリケーションの特性を判断したうえで、適切なサーバーに適切な方法でリクエストを転送します。最近のADCでは、このために必要な、クライアントからのリクエストを詳細に精査する機能を進化させています。これにより、アプリケーションの実行速度がより向上するほか、アプリケーションの変更/追加も迅速に行えるようになります。
また、キャッシングと圧縮もADC定番の機能です。アクセスの多いコンテンツやオブジェクトを圧縮してADC上にキャッシュしておくことで、サーバーへのアクセス負荷を削減できます。複雑なリクエスト処理の繰り返しが少なくなるため、システム全体の負荷が下がります。HTTP圧縮には標準のブラウザがサポートしているGZIP/Deflateを使うため、特別なソフトも必要ありません。コンテンツが圧縮されることで、ネットワークの使用率も削減できます。
さらに新しい機能としては、同一のデータを繰り返してダウンロードすることがないよう、変更があったデータだけをダウンロードさせるコンテンツ制御機能が提供されています。
次ページでは、ADCをデータセンター(クラウド)で運用する際に役立つ管理機能や拡張性について解説します。