La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 12 Slide 1 Arquitecturas de Sistemas Distribuidos.

Presentaciones similares


Presentación del tema: "©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 12 Slide 1 Arquitecturas de Sistemas Distribuidos."— Transcripción de la presentación:

1 ©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 12 Slide 1 Arquitecturas de Sistemas Distribuidos

2 ©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 12 Slide 2 Objetivos l Explicar las ventajas y desventajas de las diferentes arquitecturas de sistemas distribuidos l Discutir la arquitectura cliente-servidor y las arquitecturas de objetos distribuidos l Describir los corredores y los principios subyacentes a las normas de CORBA l Introducir a las arquitecturas de igual a igual y arquitecturas orientadas a los servicios como los nuevos modelos de computación distribuida.

3 ©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 12 Slide 3 Tópicos expuestos l Arquitecturas multiprocesador l Arquitecturas cliente-servidor l Arquitecturas de objetos distribuidos l Computación distribuida interorganizacional

4 ©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 12 Slide 4 Sistemas distribuidos l Prácticamente todos los grandes sistemas basados en computadoras son ahora los sistemas distribuidos. l Procesamiento de la información se distribuye a lo largo de varios ordenadores en lugar de limitarse a una sola máquina. l Ingeniería de software es distribuida, por lo tanto, es muy importante para la empresa los sistemas de computación.

5 ©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 12 Slide 5 Tipos de sistemas distribuidos l Sistemas personales que no se distribuyen y que están diseñados para ejecutarse en un ordenador personal o estación de trabajo. l Los sistemas integrados que se ejecutan en un único procesador o en un grupo integrado de los transformadores. l Sistemas distribuidos, donde el software del sistema se ejecuta en un poco integrado grupo de procesadores conectados por una red.

6 ©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 12 Slide 6 Sistema distribuido características l La distribución de recursos Intercambio de recursos de hardware y software. l Apertura Uso de equipos y software de diferentes proveedores. l Concurrencia Concurrentes para mejorar el rendimiento de procesamiento. l Escalabilidad Aumento del rendimiento mediante la adición de nuevos recursos. l Tolerancia a fallos La capacidad de seguir funcionando después de un fallo ha ocurrido.

7 ©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 12 Slide 7 Sistema distribuido - desventajas l Complejidad Normalmente, los sistemas distribuidos son más complejos que los sistemas centralizados. l Seguridad Más susceptibles a las agresiones externas. l Manejabilidad Más esfuerzo necesario para la gestión del sistema. l Impredecibilidad Imprevisibles respuestas en función de la organización y el sistema de carga de red.

8 ©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 12 Slide 8 Arquitecturas de sistemas distribuidos l Arquitecturas cliente-servidor Los servicios que están llamados por los clientes. Servidores que prestan servicios reciben un trato diferente de los clientes que utilizan los servicios. l Arquitecturas de objetos distribuidos No distingue entre clientes y servidores. Cualquier objeto en el sistema puede proporcionar y utilizar servicios de otros objetos.

9 ©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 12 Slide 9 Middleware l El software que gestiona y apoya los diferentes componentes de un sistema distribuido. En esencia, se encuentra en el centro del sistema. l Middleware es un software de propósito general que normalmente se compra como un componente comercial más que escribirse especialmente por los desarrolladores de la aplicación. l Ejemplos Monitores de procesamiento de transacciones; Convertidores de datos; Los controladores de la comunicación.

10 ©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 12 Slide 10 Arquitecturas multiprocesador l Simple modelo de sistema distribuido. l Sistema compuesto por múltiples procesos que pueden (aunque no necesariamente) se ejecutan en diferentes procesadores. l Modelo arquitectónico de muchos grandes sistemas en tiempo real. l Proceso de distribución de procesador puede ser pre-ordenado o pueden estar bajo el control de un despachador.

11 ©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 12 Slide 11 Un multiprocesador - sistema de control de tráfico

12 ©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 12 Slide 12 Arquitecturas cliente-servidor l La aplicación se modela como un conjunto de servicios que son proporcionados por los servidores y una serie de clientes que utilizan estos servicios. l Clientes saben de servidores, pero los servidores no necesitan saber de los clientes. l Clientes y servidores son los procesos lógicos l El mapeo de los transformadores a los procesos no necesariamente es 1: 1.

13 ©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 12 Slide 13 Un sistema cliente-servidor

14 ©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 12 Slide 14 Computadoras en una red C / S

15 ©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 12 Slide 15 Arquitectura de aplicación por capas l Capa de presentación Preocupada con la presentación de los resultados de un cálculo a los usuarios del sistema y con la recogida de entradas de usuario. l Capa de procesamiento de la aplicación Preocupación por que la funcionalidad de la aplicación sea específica, por ejemplo, en un sistema bancario, la banca, tales como las funciones de cuenta abierta, etc l Capa de gestión de datos Preocupada con la gestión del sistema de bases de datos.

16 ©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 12 Slide 16 Aplicación capas

17 ©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 12 Slide 17 Clientes ligeros y pesados l Modelo cliente-ligero En un modelo cliente-ligero, la solicitud de procesamiento y gestión de datos se lleva a cabo en el servidor. El cliente es responsable de ejecutar el software de presentación. l modelo cliente - pesado En este modelo, el servidor sólo es responsable de la gestión de datos. En el software del cliente se aplica la lógica de aplicación y la interacción con el usuario del sistema.

18 ©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 12 Slide 18 Clientes ligeros y pesados

19 ©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 12 Slide 19 Modelo de cliente ligero l Se utiliza cuando se migran los sistemas a arquitecturas cliente-servidor. El legado del sistema actúa como un servidor en su propio derecho, con una interfaz gráfica implementadas en un cliente. l Una de las principales desventajas es que se impone una pesada carga de procesamiento en el servidor y la red.

20 ©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 12 Slide 20 Modelo de Cliente pesado l Más de procesamiento, se delegan en el cliente como el proceso de solicitud es ejecutado a nivel local. l Más adecuado para las nuevas C / S los sistemas en los que las capacidades de los sistemas cliente son conocidos de antemano. l Más complejo que un cliente ligero modelo especialmente para la gestión. Nuevas versiones de la aplicación tiene que estar instalado en todos los clientes.

21 ©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 12 Slide 21 Un cliente-servidor del sistema de ATM

22 ©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 12 Slide 22 Arquitecturas de tres niveles l En una arquitectura de tres niveles, cada una de las capas de arquitectura de aplicaciones podrá ejecutar en un procesador. l Permite un mejor rendimiento que un enfoque de cliente-ligero y es más simple de administrar que un enfoque cliente-pesado. l Una arquitectura más escalable - como aumentar la demanda, los servidores adicionales se pueden añadir.

23 ©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 12 Slide 23 Arquitectura C/S de tres capas

24 ©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 12 Slide 24 Un sistema de banca por Internet

25 ©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 12 Slide 25 Uso de arquitecturas C / S

26 ©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 12 Slide 26 Arquitecturas de objetos distribuidos l No hay una distinción en las arquitecturas de objetos distribuidos entre clientes y servidores. l Cada entidad es un objeto distribuible que proporciona servicios a otros objetos y recibe servicios de otros objetos. l Objeto de comunicación es a través de un sistema llamado "middleware" un Object Request Broker. l Sin embargo, las arquitecturas de objetos distribuidos son más complejos para el diseño de sistemas C / S.

27 ©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 12 Slide 27 Arquitectura de objetos distribuidos

28 ©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 12 Slide 28 Ventajas de la arquitectura de objetos distribuidos l Permite al diseñador del sistema retrasar las decisiones sobre dónde y cómo deben ser los servicios prestados. l Es una arquitectura de sistema muy abierta que permite que los nuevos recursos que se añadirán a la misma, según sea necesario. l El sistema es flexible y escalable. l Es posible reconfigurar el sistema de forma dinámica con los objetos que migran a través de la red, según sea necesario.

29 ©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 12 Slide 29 Utilización de la arquitectura de objetos distribuidos l Como un modelo lógico que permite que la estructuración y organización del sistema. En este caso, pensar en cómo ofrecer la funcionalidad de la aplicación únicamente en términos de servicios y las combinaciones de servicios. l Como un enfoque flexible para la aplicación de sistemas cliente-servidor. El modelo de lógica del sistema es un modelo cliente-servidor, pero tanto los clientes como los servidores se realizan como objetos de la comunicación distribuida a través de un marco común de comunicación.

30 ©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 12 Slide 30 Un sistema de minería de datos

31 ©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 12 Slide 31 Sistema de minería de datos l El modelo lógico del sistema no es uno de prestación de servicios donde hay distinguidos servicios de gestión de datos. l Permite que el número de bases de datos que se accede a un aumento sin alterar el funcionamiento del sistema. l Que permite nuevos tipos de relaciones que se deben minadas integrador mediante la adición de nuevos objetos.

32 ©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 12 Slide 32 CORBA l CORBA es un estándar internacional para un Object Request Broker - middleware para la gestión de las comunicaciones entre objetos distribuidos. l Middleware para la computación distribuida que se necesite en 2 niveles: En la lógica de comunicación, el middleware permite que los objetos en diferentes ordenadores para el intercambio de datos y control de la información; A nivel de componente, el middleware proporciona una base para el desarrollo de componentes compatibles. CORBA componente normas se han definido.

33 ©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 12 Slide 33 CORBA - estructura

34 ©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 12 Slide 34 Elementos para los estándares l Modelo de objetos para objetos de aplicación. l Intermediario de peticiones de objetos, definido por el ORB, para un dominio específico. l CORBA - servicios fundamentales, como los directorios y de gestión de la seguridad. l Conjunto de componentes comunes, pueden ser verticales o específicos del dominio, u horizontales o de propósito general.

35 ©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 12 Slide 35 CORBA l Un modelo de objetos de objetos de aplicación Un objeto CORBA es la encapsulación de atributos y servicios, el lenguaje neutro definido en una interfaz IDL (lenguaje de definición de interfaz). l Solicitud de un objeto intermediario que gestiona las peticiones de los servicios de otro objeto. l Un conjunto de servicios generales, objeto de uso a muchas aplicaciones distribuidas. l Un conjunto común de componentes construidos en la cima de estos servicios.

36 ©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 12 Slide 36 Objetos CORBA l Son comparables, en principio, a los objetos en C++ y Java. l Deben tener una interfaz de definición que se expresa usando un lenguaje común (IDL), similar a C++. l Existe una cartografía de este IDL a lenguajes de programación (C++, Java, etc.) l Por lo tanto, los objetos escritos en diferentes lenguajes se pueden comunicar unos con otros.

37 ©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 12 Slide 37 Object Request Broker (ORB) l El ORB se encarga de las comunicaciones entre objetos. Se sabe de todos los objetos en el sistema y sus interfaces. l Usando un ORB, la convocatoria une un objeto stub IDL que define la interfaz.

38 ©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 12 Slide 38 Comunicaciones de objetos basadas en ORB

39 ©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 12 Slide 39 Comunicaciones entre ORB l No son programas separados, pero por lo general son un conjunto de objetos en una biblioteca, que están vinculados a una aplicación cuando se haya desarrollado. l Manejan las comunicaciones entre los objetos de ejecución sobre la máquina cuerdo. l Varios ORB pueden estar disponibles, y cada computadora en un sistema distribuido tendrá su propio ORB. l Las comunicaciones Inter-ORB se utilizan para objetos distribuidos llamadas.

40 ©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 12 Slide 40 Inter-ORB - comunicaciones

41 ©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 12 Slide 41 CORBA - servicios l Servicios de nombres y de categorias Estas permiten a los objetos descubrir y hacer referencia a otros objetos en la red. l Servicios de notificación Estas permiten a los objetos notificar a otros objetos que un evento ha ocurrido. l Servicios de transacción Operaciones de apoyo atómica y reversión en caso de fallo.

42 ©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 12 Slide 42 Arquitecturas interorganizacionales l Para la seguridad y la interoperabilidad de los motivos, la mayoría de la computación distribuida se ha aplicado a nivel de empresa u organización. l Las normas locales, la gestión y procesos operacionales de aplicación. l Nuevos modelos de computación distribuida se han diseñado para apoyar a la organización entre los distintos nodos de computación que se encuentran en distintas organizaciones.

43 ©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 12 Slide 43 Arquitecturas Peer-to-peer l Peer to peer (p2p) son sistemas descentralizados, donde los cálculos pueden ser realizados por cualquier nodo en la red. l El sistema general está diseñado para aprovechar la potencia de cálculo y almacenamiento de un gran número de ordenadores de la red. l La mayoría de los sistemas P2P han sido los sistemas de personal, pero cada vez hay más empresas que usan esta tecnología.

44 ©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 12 Slide 44 Modelos arquitectónicos P2P l La arquitectura de red lógica Arquitecturas descentralizadas; Arquitecturas semi-centralizadas. l Arquitectura de aplicaciones La organización general de los componentes que conforman una aplicación p2p.

45 ©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 12 Slide 45 Arquitectura descentralizada p2p

46 ©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 12 Slide 46 Semi-centralizada p2p

47 ©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 12 Slide 47 Arquitecturas orientadas a los servicios l Giran en torno al concepto de los servicios prestados externamente (servicios web). l Un servicio web es un estándar para hacer un componente disponible reutilizable y accesible a través de la web Un impuesto sobre la presentación de servicios podría prestar apoyo a los usuarios a rellenar sus formularios de impuestos y presentar estos a las autoridades fiscales.

48 ©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 12 Slide 48 Un servicio genérico l Un acto o rendimiento ofrecido por una parte a otra. Aunque el proceso puede estar vinculado a un producto físico, el rendimiento es esencialmente intangible y no suele dar lugar a la propiedad de cualquiera de los factores de producción. l La prestación de servicios, por lo tanto, es independiente de la aplicación que utiliza el servicio.

49 ©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 12 Slide 49 Sistema orientado a servicios

50 ©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 12 Slide 50 Objetos y servicios distribuidos l Independencia del proveedor. l Publicidad de la disponibilidad del servicio. l Las aplicaciones pueden retrasar el enlace de los servicios. l Es posible la construccion oportunista de nuevos servicios. l Pagar por el uso de los servicios. l Aplicaciones más pequeñas y compactas. l Solicitudes de adaptación y reacción de aplicaciones.

51 ©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 12 Slide 51 Normas de los Servicios l Se basan en normas basadas en XML, lo que puede ser proporcionado en cualquier plataforma y escritas en cualquier lenguaje de programación. l Normas clave SOAP - Simple Object Access Protocol; WSDL - Web Services Description Language; UDDI – Universal Description, Discovery and Integration.

52 ©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 12 Slide 52 Escenario de servicios l Un sistema de información en un vehículo proporciona dispositivos con información sobre el tiempo, las condiciones del tráfico, información local etc. Esto está ligado a la radio del coche de modo que la información se entrega como una señal de un determinado canal de radio. l El coche está equipado con receptor GPS para descubrir su posición y, sobre la base de esa posición, el sistema accede a una amplia gama de servicios de información. La información puede ser entregada en el lenguaje especificado del controlador.

53 ©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 12 Slide 53 Sistema automotriz

54 ©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 12 Slide 54 l Los sistemas distribuidos permiten compartir recursos para apoyo al intercambio, la apertura, la concurrencia, escalabilidad, tolerancia a fallos y la transparencia. l En las arquitecturas cliente-servidor se involucran los servicios entregados por los servidores a los programas operativos de los clientes. l Interfaz de usuario de software siempre se ejecuta en el cliente y gestión de datos en el servidor. La funcionalidad de la aplicación puede estar en el cliente o el servidor. l En una arquitectura de objetos distribuidos, no hay distinción entre clientes y servidores. Puntos clave

55 ©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 12 Slide 55 Puntos clave l Los objetos distribuidos requieren sistemas "middleware" para manejar las comunicaciones y el añadir y eliminar objetos del sistema. l Las normas CORBA son un conjunto de normas que apoyan al middleware de arquitecturas de objetos distribuidos. l Arquitecturas peer to peer son arquitecturas descentralizadas donde no hay distinción entre clientes y servidores.


Descargar ppt "©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 12 Slide 1 Arquitecturas de Sistemas Distribuidos."

Presentaciones similares


Anuncios Google