Panorama general de las aplicaciones distribuidas.

26
Panorama general de las aplicaciones distribuidas

Transcript of Panorama general de las aplicaciones distribuidas.

Page 1: Panorama general de las aplicaciones distribuidas.

Panorama general de las

aplicaciones distribuidas

Page 2: Panorama general de las aplicaciones distribuidas.

Objetivo de la Unidad

El estudiante reconocerá la evolución, características y la naturaleza de las aplicaciones distribuidas.

Page 3: Panorama general de las aplicaciones distribuidas.

Contenido de la Unidad1.1 Evolución de las aplicaciones informáticas.

1.1.1 Aplicaciones monolíticas.1.1.2 Aplicaciones cliente/servidor.1.1.3 Aplicaciones de 2,3 y n capas.1.1.4 Aplicaciones distribuidas.

1.2 Evolución de las tecnologías para el desarrollo de aplicaciones distribuidas.1.2.1 De interfaz de usuario.1.2.2 De aplicación.1.2.3 De base de datos.1.2.4 De comunicación de datos.1.2.5 De conexión entre capas.

1.3 Escenarios de utilización de las aplicaciones distribuidas.

1.4 Problemas comunes en el desarrollo y uso de aplicaciones distribuidas.

Page 4: Panorama general de las aplicaciones distribuidas.

Modelos de aplicaciones

Los departamentos de informática y

empresas de desarrollo tienen que decidir,

a la hora de planificar la creación de una

nueva aplicación, cual de los modelos

posibles quiere utilizar.

Page 5: Panorama general de las aplicaciones distribuidas.

Evolución de las aplicacionesinformáticas

Aplicaciones Distribuidas

Page 6: Panorama general de las aplicaciones distribuidas.

Necesidades a cubrir

Trabajo a distancia Compartir información Accesibilidad Seguridad en la protección de la

información (tener la base de datos particionada en dos o mas nodos)

Independencia lugares

Page 7: Panorama general de las aplicaciones distribuidas.

Cualquier aplicación actual cuenta generalmente con trespartes diferenciadas: Una interfaz de usuario: Elemento con el que

interacciona el usuario de la aplicación, ejecutando acciones, introduciendo u obteniendo información.

Lógica ó Reglas de negocio: Son las que procesan la información para generar los resultados que persiguen, siendo el elemento fundamental que diferencia unas aplicaciones de otras.

Gestión de datos: Se ocupa del almacenamiento y recuperación de la información.

Page 8: Panorama general de las aplicaciones distribuidas.

Aplicaciones MonolíticasEn una aplicación monolítica las tres partes

forman un todo y se ejecutan en la misma maquina.

Ejemplo: Resulta caro y los costos de mantenimiento

son también altos.

DatosLógica de negocio

Interface de usuario

Page 9: Panorama general de las aplicaciones distribuidas.

Aplicación Monolítica

Una aplicación aplicación monolíticamonolítica duplica en cada computadora todos sus elementos: interfaz de usuario, lógica o reglas de negocio y acceso a datos.

DatosLógica de negocio

Interface de usuario

Page 10: Panorama general de las aplicaciones distribuidas.

Aplicación MonolíticaVentajas Desventajas

Funcionan mas rápido.

Fácil de desarrollar. difícil de mantener,

poco escalable y que Precisa de cierta

potencia de proceso.

Requieren más y mejor HW en las estaciones de trabajo

Son infinitamente más lentos en el procesamiento de peticiones sencillas

Ocupan mayor ancho de banda, provocando congestionamiento en la Red Local

Requieren habilitar el acceso real a la carpeta de datos para todos los usuarios de la aplicación

Su actualización es más costosa

No permiten el acceso en línea desde fuera de la Red Local ó requieren de implementaciones de soluciones de conectividad muy costosas

Page 11: Panorama general de las aplicaciones distribuidas.

Aplicaciones cliente/servidor Cliente Se le representa por un software

de aplicación y lo utilizan los usuarios de Internet para acceder a un determinado servicio.

Servidor En cambio un servidor tiene un software de servidor que lo utiliza para ofrecer al cliente toda la funcionalidad utilizada por el cliente. El cliente y el servidor se comunican a través de Internet por un protocolo que ellos mismos definen.

Page 12: Panorama general de las aplicaciones distribuidas.

Cliente / Servidor

HTTP

Page 13: Panorama general de las aplicaciones distribuidas.

Aplicaciones en dos capas

Presentación y Lógica Datos

Page 14: Panorama general de las aplicaciones distribuidas.

Aplicaciones en tres capas

Presentación Datos Lógica

Page 15: Panorama general de las aplicaciones distribuidas.

¿Aplicación de n capas?

Page 16: Panorama general de las aplicaciones distribuidas.

Aplicación en n-capas El modelo n-tier (n-capas) de informática distribuida ha

emergido como la arquitectura predominante para la construcción de aplicaciones multiplataforma en la mayor parte de las empresas pertenecientes a Fortune 1000. Este cambio radical en los modelos de computación, desde los sistemas monolíticos basados en mainframe y los tradicionales sistemas cliente-servidor, hacia sistemas distribuidos multiplataforma altamente modulables.

Compañías como Sun con su estrategia Sun Tone, o Microsoft con DotNET (.Net) estan apostando crear herramientas para el diseño en n-capas .

Page 17: Panorama general de las aplicaciones distribuidas.

Aplicación en n-capasVentajas del modelo

Desarrollos paralelos (en cada capa).

Aplicaciones más robustas debido al encapsulamiento.

Mantenimiento y soporte más sencillo (es más sencillo cambiar un componente que modificar una aplicación monolítica).

Mayor flexibilidad (se pueden añadir nuevos módulos para dotar al sistema de nueva funcionalidad)

Alta escalabilidad . La principal ventaja de una aplicación distribuida bien diseñada es su buen escalado, es decir, que puede manejar muchas peticiones con el mismo rendimiento simplemente añadiendo más hardware. El crecimiento es casi lineal y no es necesario añadir más código para conseguir esta escalabilidad.

Page 18: Panorama general de las aplicaciones distribuidas.

¿Qué es una aplicación distribuida?

Page 19: Panorama general de las aplicaciones distribuidas.

Diseñando Aplicaciones Distribuidas

El diseño de aplicaciones modernas involucra la división de una aplicación en múltiples capas; la interfaz de usuario, la capa media de objetos de negocios, y la capa de acceso a datos. Puede ser útil identificar los tipos de procesamiento que podemos esperar que una aplicación realice..

Page 20: Panorama general de las aplicaciones distribuidas.

Diseñando Aplicaciones Distribuidas.

Muchas aplicaciones pueden, al menos, hacer lo siguiente:

Cálculos u otros procesos de negocios.Ejecución de reglas de negocios.Validación de datos relacionados al negocio.Manipulación de datos.Ejecución de las reglas de datos relacional.Interactuar con aplicaciones externas o servicios.Interactuar con otros usuarios.

Page 21: Panorama general de las aplicaciones distribuidas.

No Confundir

Algo que se tiene que dejar claro es que no podemos confundir una aplicación distribuida con un sistema distribuido…

« Un sistema distribuido se define como una colección de computadores autónomos conectados por una red, con el software distribuido adecuado para que el sistema sea visto por los usuarios como una única entidad capaz de proporcionar facilidades de computación »

Ejemplo:

Page 22: Panorama general de las aplicaciones distribuidas.

Evolución de las tecnologías para el desarrollo de aplicaciones distribuidas De Interfaz de usuario

Page 23: Panorama general de las aplicaciones distribuidas.

EvoluciónDe bases de datos

Page 24: Panorama general de las aplicaciones distribuidas.

Escenarios de utilización de las aplicaciones distribuidas

Page 25: Panorama general de las aplicaciones distribuidas.

Ejemplos de aplicaciones Distribuidas

Page 26: Panorama general de las aplicaciones distribuidas.

Problemas comunes en el desarrollo y uso de aplicaciones distribuidas.

Disponibilidad de los servidores. Acceso a los sistemas de manera remota. Posibilidad de que pueden ser vistos (pero

no accesados) por muchas personas. Capacidad de los equipos donde se

almacenan las fuentes.