INSTITUTO TECNOLÓGICO DE CERRO AZUL
Programación web
Una aplicación Web es proporcionada por un servidor Web y utilizada por usuarios que se Conectan desde cualquier punto vía clientes Web (browsers o navegadores). La arquitectura de un Sitio Web tiene tres componentes principales:
Un servidor Web
Una conexión de red
Uno o más clientes
El servidor Web distribuye páginas de información formateada a los clientes que las solicitan. Los requerimientos son hechos a través de una conexión de red, y para ello se usa el protocolo HTTP. Una vez que se solicita esta petición mediante el protocolo HTTP y la recibe el servidor Web, éste localiza la página Web en su sistema de archivos y la envía de vuelta al navegador que la solicitó
Las aplicaciones Web están basadas en el modelo Cliente/Servidor que gestionan servidores web, y que utilizan como interfaz páginas web.
Las páginas Web son el componente principal de una aplicación o sitio Web. Los browsers piden páginas (almacenadas o creadas dinámicamente) con información a los servidores Web. En algunos ambientes de desarrollo de aplicaciones Web, las páginas contienen código HTML y scripts dinámicos, que son ejecutados por el servidor antes de entregar la página.
Una vez que se entrega una página, la conexión entre el browser y el servidor Web se rompe, es decir que la lógica del negocio en el servidor solamente se activa por la ejecución de los scripts de las páginas solicitadas por el browser (en el servidor, no en el cliente). Cuando el browser ejecuta un script en el cliente, éste no tiene acceso directo a los recursos del servidor. Hay otros componentes que no son scripts, como los applets (una aplicación especial que se ejecuta dentro de un navegador) o los componentes ActiveX. Los scripts del cliente son por lo general código JavaScript o VBSscript, mezclados con código HTML.
La colección de páginas son en una buena parte dinámicas (ASP, PHP, etc.), y están agrupadas lógicamente para dar un servicio al usuario. El acceso a las páginas está agrupado también en el tiempo (sesión). Los componentes de una aplicación Web son:
1. Lógica de negocio.
-
Parte más importante de la aplicación.
-
Define los procesos que involucran a la aplicación.
-
Conjunto de operaciones requeridas para proveer el servicio.
2. Administración de los datos.
-
Manipulación de BD y archivos.
3. Interfaz
-
Los usuarios acceden a través de navegadores, móviles, PDAs, etc.
-
Funcionalidad accesible a través del navegador.
-
Limitada y dirigida por la aplicación.
Las aplicaciones web se modelan mediante lo que se conoce como modelo de capas, Una capa representa un elemento que procesa o trata información. Los tipos son:
-
Modelo de dos capas: La información atraviesa dos capas entre la interfaz y la administración de los datos.
-
Modelo de n-capas: La información atraviesa varias capas, el más habitual es el modelo de tres capas.
Modelo de dos Capas.
Gran parte de la aplicación corre en el lado del cliente (fat client).
Las capas son:
-
Cliente (fat client): La lógica de negocio está inmersa dentro de la aplicación que realiza el interfaz de usuario, en el lado del cliente.
-
Servidor: Administra los datos.
-
Las limitaciones de este modelo son.
-
Es difícilmente escalable
-
Número de conexiones reducida
-
Alta carga de la red.
-
La flexibilidad es restringida
-
La funcionalidad es limitada.
Modelo de tres Capas.
Una aplicación de tres capas es una aplicación cuya funcionalidad puede ser segmentada en tres niveles lógicos (capas):
• Los servicios de presentación.
• Los servicios de negocios (Lógica de Negocios) .
• Los servicios de datos.
La capa de servicios de presentación es responsable de:
• Obtener información del usuario.
• Enviar la información del usuario a los servicios de negocios para su procesamiento.
• Recibir los resultados del procesamiento de los servicios de negocios.
• Presentar estos resultados al usuario.
El nivel de servicios de negocios es responsable de:
• Recibir la entrada del nivel de presentación.
• Interactuar con los servicios de datos para ejecutar las operaciones de negocios para los que la aplicación fue diseñada a automatizar (por ejemplo, la preparación de impuestos por ingresos, el procesamiento de ordenes y así sucesivamente).
• Enviar el resultado procesado al nivel de presentación.
El nivel de servicios de datos es responsable de:
• Almacenar los datos.
• Recuperar los datos.
• Mantener los datos.
• La integridad de los datos.
Al ser la primera capa un servicio, se puede inferir que las aplicaciones no solo podrían ser de escritorio, si quisiéramos que nuestra aplicación tenga una interface web, pues solamente bastaría con cambiar la capa de presentación y de allí en adelante nada tiene porque cambiar.
Entonces nuestras páginas web estarían alojadas en un Servidor Web las mismas que se conectan a la lógica de negocios y de allí a los servicios de datos.
Aplicaciones de n Capas.
Podríamos ir separando nuestra aplicación en mas niveles lógicos, por ejemplo, vamos a querer que nuestra aplicación tenga múltiples interfaces, es decir interface gráfica (standalone o desktop) y también interface Web.
Lo aconsejado en esta circunstancia es separar al Servidor Web encargado de alojar las páginas Web en una capa más. En este caso se tendrían 4 capas.
Mientras más servicios coloquemos a nuestra aplicación y mientras más escalable lo imaginemos, mas capas lógicas van a irse añadiendo a nuestra arquitectura; allí está el inicio del estudio de las siguientes secciones del curso, LOS PATRONES DE DISEÑO.
• La arquitectura en 3 capas es la más usada
• La arquitectura en 4 capas puede ser más escable
bibliografia
https://programacionwebisc.wordpress.com/2-1-arquitectura-de-las-aplicaciones-web/
http://es.slideshare.net/CHIONA69/arquitectura-de-aplicaciones-15180551