En un sentido tradicional, N-tier significa separar la aplicación en "niveles" y poner cada "nivel" en servidores diferentes. Esto se hizo durante al menos 3 razones:¿Qué significa N-tier Architecture hoy en día?
Mantenimiento:
a) Mantenimiento Código: más fácil de hacer correcciones de errores y nuevas características.
b) Mantenimiento de hardware: Eliminar un servidor no interrumpe el servicio desde otro nivel.
Rendimiento: Un servidor a menudo no era lo suficientemente rápido como para manejar solicitudes web, cálculos de lógica de negocios y acceso a bases de datos/archivos al mismo tiempo.
Escalabilidad: Específicamente escalabilidad horizontal
a) Tolerancia a fallos: Capacidad para tener más de 1 servidor físico por nivel significa que cuando 1 servidor está abajo, la aplicación todavía puede funcionar como un todo.
b) Equilibrio de carga: Tener múltiples instancias de un nivel ayuda a dar servicio a una gran cantidad de solicitudes.
Hoy en día, el hardware y las redes son lo suficientemente rápidos como para atender miles de solicitudes por segundo en un solo servidor. Además, la palabra de moda para TI en este momento es "consolidación". Por lo tanto, incluso si la aplicación se divide en niveles, probablemente terminarán hospedando en máquinas virtuales en un solo servidor.
Creo que hoy en día, cuando las personas hablan sobre la arquitectura de N-niveles, están hablando de la separación de las preocupaciones dentro de la aplicación. Es más una separación lógica que física. Creo que siempre que logremos una buena separación de preocupaciones y un acoplamiento flexible, las aplicaciones no tienen que ser N-tier. Parece que muchos programadores piensan que la arquitectura N-tier es un estándar de oro que todas las aplicaciones web deben cumplir.
Entonces, ¿qué es la arquitectura N-tier para usted hoy en día?
De acuerdo. La separación en componentes discretos por razones de escalabilidad aún no está muerta, pero la consolidación más rápida del hardware y la red y el servidor definitivamente reduce la cantidad de aplicaciones que necesitan hacer esto. –
Probablemente no esté muerto, pero, por ejemplo, en el caso de los sitios web, existen formas más efectivas de manejar más vistas de página. – Durden81