JavaScript asíncrono y XML (AJAX) es una técnica de programación que utiliza JavaScript y el objeto XMLHTTPRequest para intercambiar datos entre un navegador web y un servidor web.

AJAX es prácticamente sinónimo de las aplicaciones de web 2.0 y se utiliza para mejorar la interactividad de las páginas web. AJAX permite a los desarrolladores actualizar en tiempo real elementos concretos de una página sin tener que volver a cargar todo su contenido. Antes, si era necesario actualizar un elemento concreto del contenido de una página web, había que volver a cargar la página completa desde el servidor web, lo que provocaba la transferencia de grandes cantidades de datos duplicados.

Mediante AJAX, el contenido de una página web puede actualizarse en función de una acción del usuario (por ejemplo, al hacer clic en un botón o pasar el cursor sobre una imagen), de un intervalo de tiempo (por ejemplo, cada 5 segundos) o de la lógica específica de la aplicación (por ejemplo, cargar una lista de las ciudades correspondientes cuando el usuario selecciona un estado de EE. UU.).

Las aplicaciones basadas en AJAX suelen aprovechar populares kits de herramientas de código abierto que ofrecen compatibilidad entre navegadores para las interacciones basadas en AJAX. Estos kits se presentan en forma de bibliotecas de JavaScript, como el framework Prototype JavaScript y los kits de herramientas Dojo.

Debido al aumento de la comunicación entre los navegadores web y los servidores web asociado a las aplicaciones basadas en AJAX, el rendimiento de estas aplicaciones puede verse afectado por diversos motivos, como la sobrecarga de las conexiones del servidor web, la gran cantidad de paquetes pequeños que circulan por la red y las limitaciones de conexión implementadas por los navegadores.

Productos de F5 que pueden abordar los problemas de seguridad y rendimiento asociados a las aplicaciones basadas en AJAX: BIG-IP Application Security Manager.