Asynchronous JavaScript and XML(AJAX)とは
Asynchronous JavaScript and XML(AJAX)は、JavaScriptとXMLHTTPRequestオブジェクトを使用して、WebブラウザとWebサーバー間でデータを交換するプログラミング手法です。
AJAXは、ほぼweb 2.0アプリケーションの代名詞となっており、Webページのインタラクティブ性を高めるために使用されます。AJAXを使用すると、ページのコンテンツ全体を再読み込みすることなく、ページ内の個々の要素をリアルタイムで更新できます。従来は、Webページ内の特定のコンテンツを更新する必要がある場合、ページ全体をWebサーバーから再読み込みしていたため、大量の重複データが転送されていました。
AJAXを使用すると、ユーザーの操作(ボタンのクリックや画像へのマウスポインターの移動など)、一定の時間間隔(5秒ごとなど)、またはアプリケーション固有のロジック(ユーザーが米国の州を選択したときに、該当する都市の一覧を読み込むなど)に基づいて、Webページ内のコンテンツを更新できます。
AJAXベースのアプリケーションでは、AJAXによる操作を複数のブラウザーでサポートする、一般的なオープンソースのツールキットがよく利用されます。このようなツールキットは、Prototype JavaScript frameworkやDojoなどのJavaScriptライブラリとして提供されています。
AJAXベースのアプリケーションでは、WebブラウザーとWebサーバー間の通信が増加するため、これらのアプリケーションのパフォーマンスが低下することがあります。その原因として、Webサーバー接続の過負荷、ネットワークを通過する大量の小さなパケット、ブラウザーに実装された接続制限などが挙げられます。
AJAXベースのアプリケーションに関連するセキュリティとパフォーマンスの問題に対処できるF5製品: BIG-IP Application Security Manager。
