Está en la página 1de 9

Uso de una arquitectura de n niveles

Un patrón de arquitectura que se puede usar para compilar sistemas

de acoplamiento flexible es de n niveles.

Una arquitectura de n niveles divide una aplicación en dos o más

niveles lógicos. Desde el punto de vista de la arquitectura, un nivel


superior puede acceder a los servicios de un nivel inferior, pero este

último no podrá acceder nunca a un nivel superior.

Los niveles ayudan a separar los problemas y están diseñados

específicamente para reutilizarse. El uso de una arquitectura con


niveles también simplifica el mantenimiento. Los niveles se pueden

actualizar o reemplazar de forma independiente, y se pueden insertar


nuevos niveles si es necesario.
1

Tres niveles hace referencia a una aplicación de n niveles que consta


de tres niveles. La aplicación web de comercio electrónico sigue esta

arquitectura de tres niveles:

 El nivel web proporciona la interfaz web a los usuarios a

través de un navegador.

 El nivel de aplicación ejecuta la lógica de negocios.

 El nivel de datos incluye las bases de datos y cualquier otro


tipo de almacenamiento que contenga pedidos del cliente e

información de los productos.

En la ilustración siguiente se muestra el flujo de una solicitud desde el

usuario al nivel de datos.


2

Cuando el usuario hace clic en el botón para realizar el pedido, la

solicitud se envía al nivel web junto con la dirección del usuario y la


información de pago. El nivel web pasa esta información al nivel de

aplicación, en el que se validará la información de pagos y se


comprobará el inventario. El nivel de aplicación puede almacenar el

pedido en el nivel de datos para su posterior captura y


procesamiento.

El sitio de comercio electrónico que se ejecuta en Azure

Azure proporciona muchas formas diferentes de hospedar

aplicaciones web, desde entornos completamente preconfigurados


que hospedan el código a máquinas virtuales que se pueden
configurar, personalizar y administrar.

Supongamos que decide ejecutar el sitio de comercio electrónico en


máquinas virtuales. Este podría ser su aspecto en el entorno de

prueba que se ejecuta en Azure. En la ilustración siguiente se muestra


una arquitectura de tres niveles que se ejecuta en máquinas virtuales

con características de seguridad habilitadas para restringir las


solicitudes entrantes.

3
4

Vamos a analizar esto más detalladamente.


¿Qué es una región de Azure?

Una región es uno o varios centros de datos de Azure dentro de una

ubicación geográfica específica. Este de EE. UU., Oeste de EE. UU. y


5
Europa del Norte son ejemplos de regiones. En esta instancia, ve que

la aplicación se está ejecutando en la región Este de EE. UU.


¿Qué es una red virtual?

Una red virtual es una red aislada lógicamente en Azure. Las redes

virtuales de Azure le resultarán familiares si ya ha configurado redes


en Hyper-V, VMware o incluso en otras nubes públicas. Una red

virtual permite que los recursos de Azure se comuniquen de forma


segura entre ellos, con Internet y con las redes locales. El ámbito de

una red virtual es una sola región; pero se pueden conectar entre sí
varias redes virtuales de otras regiones mediante el emparejamiento

de red virtual.

Las redes virtuales se pueden segmentar en una o más subredes. Las

subredes ayudan a organizar y proteger los recursos en secciones


discretas. Los niveles web, de aplicación y de datos incluyen una sola

máquina virtual cada uno. Las tres máquinas virtuales están en la


6
misma red virtual, pero en subredes independientes.

Los usuarios interactúan con el nivel web directamente, por lo que la


máquina virtual tiene una dirección IP pública junto a una privada. Los

usuarios no interactúan con los niveles de aplicación ni de datos, por


lo que estas máquinas virtuales solo tienen una dirección IP privada

cada una.

También puede mantener los niveles de servicio o datos en la red

local, colocando su nivel web en la nube, pero manteniendo un


control estricto sobre otros aspectos de la aplicación. Una puerta de

enlace VPN (o puerta de enlace de red virtual) habilita este escenario.


Puede proporcionar una conexión segura entre una instancia de

Azure Virtual Network y una ubicación local a través de Internet.


Azure administra el hardware físico de forma automática. Puede
configurar las redes virtuales y las puertas de enlace mediante

software, lo que permite tratar una red virtual como si fuera una red
propia. Se elige a qué otras redes puede llegar la red virtual, ya sea

Internet u otras redes del espacio de direcciones IP privado.

¿Qué es un grupo de seguridad de red?

Un grupo de seguridad de red, o NSG, permite o deniega el tráfico de


red entrante a los recursos de Azure. Puede considerar un grupo de

seguridad de red como un firewall en el nivel de nube de la red.

Por ejemplo, observe que la máquina virtual de la capa web permite

el tráfico entrante en los puertos 22 (SSH) y 80 (HTTP). Este grupo de


seguridad de red de la máquina virtual permite el tráfico entrante a

través de estos puertos de todos los orígenes. Puede configurar un


grupo de seguridad de red para que acepte tráfico únicamente de

orígenes conocidos, como direcciones IP en las que confíe.


Nota

El puerto 22 le permite conectarse directamente a los sistemas Linux a


través de SSH. Aquí se muestra el puerto 22 abierto con fines de

aprendizaje. En la práctica, puede configurar el acceso VPN a la red


virtual para aumentar la seguridad.

8
RESUMEN

Ahora, la aplicación de tres niveles se ejecuta en Azure en la región

Este de EE. UU. Una región es uno o varios centros de datos de Azure
dentro de una ubicación geográfica específica.

Cada nivel solo puede acceder a los servicios de un nivel inferior. La


máquina virtual que se ejecuta en el nivel web tiene una dirección IP

pública porque recibe tráfico de Internet. Las máquinas virtuales de


los niveles inferiores (de aplicación y de datos), tienen direcciones IP

privadas porque no se comunican directamente a través de Internet.

Las redes virtuales permiten agrupar y aislar sistemas relacionados.

Puede definir grupos de seguridad de red para controlar qué tráfico


puede pasar a través de una red virtual.
9

La configuración que ha visto aquí es un buen punto de partida. Pero


cuando implemente el sitio de comercio electrónico en producción en

la nube, es probable que experimente los mismos problemas que


experimentó en la implementación local.