¿Qué tipo de arquitectura del lado del servidor se necesita para implementar aplicaciones web como kayak.com y findthebest.com?

Sí, es la respuesta corta.

Los sitios de viajes a menudo usan muchas fuentes de datos para encontrar y comparar precios, por lo que se requiere algún tipo de índice para facilitar búsquedas rápidas y eficientes y para permitir funciones de Ajax como el filtrado, etc. Además, las API a las que se conectan los sitios de viajes son a menudo muy lentas que es mejor utilizar los datos en caché para la búsqueda inicial y luego recuperar los precios en tiempo real en segundo plano una vez que un usuario ha seleccionado un resultado.

Sin embargo, algunos sitios lo hacen de manera diferente y usan una única API. O, por ejemplo, un operador turístico puede tener toda la disponibilidad de alojamiento y los datos del vuelo, en cuyo caso no puede usar un índice o caché.

Una vez que comience a buscar empresas de gran escala (Expedia, Travelocity, etc.), tendrá muchas capas de aplicación para proporcionar búsqueda, almacenamiento en caché, aplicar metadatos, reglas comerciales, reglas de empaquetado, etc. Arquitecturas web realmente complicadas, pero también algunas de las más divertido trabajar con (en mi opinión)!