Si el número de consultas de la base de datos se considerara la moneda de las aplicaciones web, y si algunas consultas fueran más importantes que otras (alto apalancamiento / gran cantidad de información), ¿cómo diseñaría su arquitectura?

Hoy prefiero decir aplicaciones en la nube a aplicaciones web, porque el rendimiento de las consultas es un asunto muy importante para cualquier aplicación en línea, web o no.

Consultas

Un ingeniero primero debe conocer las consultas, transacciones o disparadores más importantes y pesados ​​que tendrá la aplicación. Si él sabe eso, puede, incluso antes de escribirlos, pensar en cómo evitarlos y su futura lentitud, por ejemplo, creando una arquitectura especial de tablas involucradas (sí, porque a veces deberíamos hacerlo mejor de lo que enseña el modelo ER), usando soluciones sin sql o tratando de poner algunos datos en el lado del cliente.

Quiero decir que debes tratar de evitar escribir las pesadas consultas que sabes que existirán. Tienes que ser muy creativo, listo para usar.

Caché de aplicaciones

A veces, la caché de los frameworks o la caché de los servidores no son suficientes, por lo que los ingenieros deben escribir el propio sistema de caché de las aplicaciones para evitar realizar transacciones lentas. Debe estar muy bien diseñado.

Servidor de base de datos

Los ingenieros también deberían pensar en múltiples bases de datos y servidores de bases de datos equilibrados. Impacta mucho el diseño de la arquitectura de la aplicación.

Vigilancia

Antes del lanzamiento y durante la planificación, los ingenieros deben saber cómo supervisarán las consultas lentas y las acciones lentas mientras se ejecuta la aplicación. A veces, las soluciones de bases de datos pueden no ser suficientes y debe diseñar algo.