Descargar

Arquitectura web

Enviado por Pablo Turmero


Partes: 1, 2

    edu.red

    Introducción Concepto de Arquitectura en Desarrollo Software Concepción desde RUP Arquitectura física Distribución de nodos en la red Mapeo componente software – nodo computacional Concepto de Arquitectura software Moderno Patrones de diseño de arquitectura Separación de responsabilidades No existe forma de representar arquitectura software con las herramientas actuales (RUP-UML)

    edu.red

    Aplicaciones Web con Java Fuerte apuesta por parte del sector privado: Sun Microsystems. Extensiones J2EE BEA Systems con Weblogic IBM con WebSphere Netscape (y Sun) con iPlanet Orión – Oc4J Oracle 9IAS Fuerte apuesta del mundo opensource! www.apache.org Desarrollo del servidor web apache, el más difundido del mundo. Jakarta.apache.org Conjunto de frameworks y clases de utilidad como apoyo al desarrollo de aplicaciones basadas en java/J2EE. www.jboss.org Desarrollo del contenedor de EJBs Jboss. Gratuito y muy efectivo.

    edu.red

    Evolución de Modelos Arquitectónicos Modelo 1

    Modelo 1.5

    Modelo 2

    Modelo 2X

    Servlets/JSPs MVC Model Multicanalidad

    edu.red

    Modelo de Arquitectura 1Aplicaciones CGI Las más primitivas Aplicaciones Web CGI Presentación, negocio y persistencia mezclados El estado se almacena en el cliente y cada petición supone una ejecución completa independiente de estado (Transacction Script)

    (Gp:) Browser (Gp:) Script CGI (Gp:) Database

    edu.red

    Modelo de Arquitectura 1.5JSP y Servlets Separación de responsabilidades: JSPs llevan la lógica de presentación (navegabilidad, visualización, etc.) Beans incrustados asumen las responsabilidades de negocio y datos

    edu.red

    Modelo de Arquitectura 2MVC Evolución del modelo 1.5 Incorporación del patrón de diseño MVC. Controlador: Navegación Negocio y Datos: Beans Presentación: JSPs

    edu.red

    Modelo de Arquitectura 2MVC con Struts Struts es la implementación del MVC que aporta Jakarta para aplicaciones web java. http://jakarta.apache.org/struts

    edu.red

    Modelo de Arquitectura 2XAplicaciones Multicanal Evolución del modelo 2 para construir aplicaciones multicanal. Implementación de referencia STXX (extiende Struts) http://stxx.sourceforge.net/ Soluciones basadas en XML y XSLTs.

    edu.red

    Aspectos Generales enArquitectura WEB Escalabilidad Separación de responsabilidades Portabilidad Componentización de los servicios de infraestructura Gestión de la sesión del usuario, cacheado de entidades Aplicación de patrones de diseño

    edu.red

    Escalabilidad¿Importancia? Característica principal apps WEB: Posible incremento vertiginoso del número de usuarios Es importante: El correcto dimensionamiento de la aplicación La adaptabilidad del sistema ante el incremento de demanda. Varias opciones: Escalabilidad Horizontal Escalabilidad Vertical Cluster de servidores

    edu.red

    EscalabilidadHorizontal Clonamos el sistema y balanceamos la carga.

    Sistema Usuarios Internet Sistema Sistema Sistema (Gp:) Balanceador

    edu.red

    EscalabilidadHorizontal. Balanceador HW Distribuye por algoritmos predeterminados (Round Robin, LRU, etc.) las peticiones HTTP entre los distintos clones del sistema La selección del clon es por tanto aleatoria Problema: No garantiza que diferentes peticiones de un mismo usuario sean servidas por el mismo clon del sistema -> No hay mantenimiento de la sesión del usuario en servidor -> Condiciona el Diseño!. La sesión la debe mantener el desarrollador por otros medios: Cookies En base de datos Al ser un proceso HW, es MUY rápido.

    Partes: 1, 2
    Página siguiente