Capítulo 1. Aplicaciones fiables, escalables y mantenibles
Este trabajo se ha traducido utilizando IA. Agradecemos tus opiniones y comentarios: translation-feedback@oreilly.com
Internet se hizo tan bien que la mayoría de la gente piensa que es un recurso natural como el océano Pacífico, y no algo creado por el hombre. ¿Cuándo fue la última vez que una tecnología de tal envergadura estuvo tan libre de errores?
Alan Kay, en entrevista con el Dr. Dobb's Journal (2012)
Hoy en día, muchas aplicaciones hacen un uso intensivo de datos, en contraposición a un uso intensivo de cálculo. La potencia bruta de la CPU rara vez es un factor limitante para estas aplicaciones: los mayores problemas suelen ser la cantidad de datos, su complejidad y la velocidad a la que cambian.
Una aplicación de uso intensivo de datos suele construirse a partir de bloques de construcción estándar que proporcionan una funcionalidad comúnmente necesaria. Por ejemplo, muchas aplicaciones necesitan
-
Almacenar datos para que ellos, u otra aplicación, puedan volver a encontrarlos más tarde(bases de datos)
-
Recordar el resultado de una operación costosa, para acelerar las lecturas(cachés)
-
Permitir a los usuarios buscar datos por palabra clave o filtrarlos de varias formas(índices de búsqueda)
-
Envía un mensaje a otro proceso, para que lo gestione de forma asíncrona(procesamiento de flujos).
-
Crujir periódicamente ...