¿Vale la pena la pérdida de rendimiento por separar el código y la lógica de la base de datos en AWS EC2 de los beneficios de escalabilidad?

Odio dar una respuesta de consultoría, pero depende de cómo interactúa su código con la base de datos, cuántos datos ‘bloquea’ la fila o columna, etc.

Dicho esto, enmarcaré mi respuesta dentro de mis 20 años de experiencia en ERP utilizando múltiples bases de datos.

La respuesta siempre es sí si su código puede ser multihilo con su base de datos.

La razón principal es lo que me gusta llamar el principio del montañés. “Solo puede haber uno” Por lo general, existe algún mecanismo de bloqueo (en la base de datos o la aplicación), esta entidad única puede ser muy eficiente como un enrutador de tráfico solicita la capa de aplicación y la capa de base de datos.

En paisajes de SAP muy grandes, la arquitectura sugerida de la aplicación / DB se divide una vez más en Diálogo, Servicios centrales y DB.

La capa de diálogo (aplicación) puede ampliarse a la vez que permite que CS y DB se centren en lo que hacen bien. Incluso esto tiene capacidades de escalado finito porque tarde o temprano el IO de la base de datos se satura. (Oracle intentó resolver esto con Real Application Clusters – RAC) pero puede causar tantos problemas como resuelve.

En las bases de datos de memoria como SAP HANA se resuelve el problema y se puede escalar bastante grande mientras es extremadamente rápido, pero hay un costo asociado.

Entonces, dependiendo de su aplicación, al alejar el código de la aplicación de la base de datos, pierde el canal de comunicación rápido, sin embargo, lo que gana es la capacidad de equilibrar la carga, ampliar la escala, concentrar la carga de trabajo y ajustarlo en cada capa contra el cálculo, la memoria o Comunicación / IO (los tres puntos del triángulo de sintonización)

Si desea mejorar el tiempo de comunicación en AWS entre su capa de aplicación y su base de datos, haga tres cosas, utilice sistemas que tengan capacidades 10G, active funciones de red avanzadas, use grupos de afinidad y vea cómo el IO en su base de datos está preparado para cambiar a PIOP del estándar EBS.

Estos son desafíos que negociamos todos los días para nuestros clientes, mucha otra gran información en Recursos | Soluciones de tecnología Velocity

More Interesting

Cómo solicitar una pasantía en computación en la nube durante 6 meses

¿Hay algún vertedero para AWS SA?

¿Hay alguna posibilidad de que todos mis datos almacenados en el almacenamiento en la nube se pierdan debido a problemas técnicos (irrecuperables) por parte del proveedor? Si es así, ¿puedo demandar al proveedor por ello?

¿Qué tan costoso es el costo de una 'transferencia' de AWS RDS?

¿Por qué los planes de alojamiento para Node.js + MongoDB son caros en comparación con PHP - MySQL y cuáles son las opciones para un iniciador?

Cómo configurar el alojamiento en la nube

¿Cómo se pueden usar los grandes datos en la plataforma en la nube?

¿Qué lenguaje de programación debo usar para desarrollar un sistema / software ERP y sistemas / software de gestión de construcción para una empresa de construcción de carreteras?

¿Cuál es el mejor servidor en la nube para usar en el manejo de datos del centro de salud?

Estoy listo para iniciar una startup y necesito un servicio en la nube para el alojamiento. ¿Qué debo elegir: Amazon Web Services o Heroku?

¿Cómo se mantuvieron en el negocio empresas como YouTube e Instagram (antes de ser compradas) cuando los costos de entrega de contenido son tan altos? Incluso con dinero VC, los costos parecen mayores que el capital.

Estoy en el último año de MSc Computer Science, interesado en trabajar en IOT y proyectos de investigación relacionados con la nube. ¿Cómo puedo obtener proyectos?

Amazon EC2: ¿Qué enfoques se pueden usar para alojar bases de datos en AWS sin usar EBS?

¿Cuál es la diferencia entre una nube privada y un centro de datos?

¿Hay algún servicio en la nube en el que pueda tener un script Python simple ejecutable de forma programada de forma gratuita?