Arquitectura de Sistemas Distribuidos

Description

Aplicaciones Distribuidas Mind Map on Arquitectura de Sistemas Distribuidos, created by Christian Rafael Camacho Dillon on 31/10/2020.
Christian Rafael Camacho Dillon
Mind Map by Christian Rafael Camacho Dillon, updated more than 1 year ago
Christian Rafael Camacho Dillon
Created by Christian Rafael Camacho Dillon over 3 years ago
32
0

Resource summary

Arquitectura de Sistemas Distribuidos
  1. La arquitectura de un sistema es su estructura. Las aplicaciones distribuidas comprenden varios componentes quetener relaciones de comunicación y relaciones de control con otros componentes
    1. Separación de intereses
      1. Debería ser posible identificar los componentes de software específicos que proporcionan una funcionalidad
      2. Redes y distribución
        1. No todas las aplicaciones que utilizan la red para comunicarse se clasifican como aplicaciones distribuidas
        2. Complejidad en sistemas distribuidos
          1. El tamaño total del sistema
            1. El alcance de la funcionalidad
              1. El grado de interacción
                1. La velocidad a la que opera el sistema
                  1. Simultaneidad
                    1. Reconfiguraciones
                      1. Condiciones externas o ambientales
                      2. Arquitectura de capas
                        1. comprenden varias capas de componentes que se colocan enagrupaciones basadas en el tipo de funcionalidad que proporcionan o en función de sus interacciones con otras empresas componentes, de modo que la comunicación entre capas se produce entre capas adyacentes
                        2. Arquitecutras Jerárquicas
                          1. comprende múltiples niveles de componentes conectados de tal manera que reflejan las relaciones de control y comunicación entre ellos
                        3. Heterogeneidad
                          1. De Rendimiento
                            1. todas con la misma plataforma de hardware y sistema operativo
                            2. De la Plataforma
                              1. tiene una plataforma de hardware diferente, pero las tres ejecutan variantes compatibles del mismo sistema
                              2. Del Sistema Operativo
                                1. tienen diferentes sistemas operativos pero la misma plataforma de hardware
                                2. son aquellos en los que todas las computadoras son iguales, en términos de su hardware y configuración, recursos y sistema operativo
                                  1. Fuentes
                                    1. son tecnológicas, intencionales y accidentales
                                    2. Impacto
                                      1. Requiere interfaces y protocolos estándar para garantizar que el contenido de los mensajes y la semántica de la comunicación en sí se conservan cuando se pasa un mensaje entre dos sistemas informáticos diferentes
                                      2. Portabilidad de Software
                                        1. Portar aplicaciones de un sistema a otro
                                          1. puede ser muy complejo porque los dos sistemas hostpuede ser muy diferente
                                    3. Clases de Arquitecturas
                                      1. A nivel de Sistemas y Hardware
                                        1. Sistemas (hardware) estrechamente acoplados
                                          1. comprenden varias unidades de procesador integrados juntos en la misma computadora física
                                          2. Sistemas (hardware) débilmente acoplados
                                            1. consisten en una serie de computadoras autónomas capaces de funcionar independientemente de las demás
                                            2. Procesamiento en paralelo
                                              1. comprende una serie de procesos que realizan todos los mismos cálculos pero con diferentes datos y en diferentes procesadores
                                            3. De Software
                                              1. la lógica empresarial se divide en dos o más componentes
                                                1. Acoplamiento entre componentes de software
                                                  1. Acoplamiento estrecho (o fijo)
                                                    1. se caracteriza por el diseño de conexiones decididas en el tiempo entrecomponentes
                                                    2. Débilmente acoplados (desacoplados)
                                                      1. no tienen conexiones con otros componentes específicosdecidido en tiempo de diseño
                                                      2. Acoplamiento directo
                                                        1. se caracteriza por el hecho de que las conexiones de nivel de proceso a proceso se corresponden con la comunicación de nivel empresarial de la aplicación
                                                        2. Acoplamiento indirecto
                                                          1. describe la situación en la que los componentes interactúan a través de un intermediario
                                                          2. Acoplamiento aislado
                                                            1. describe la situación en la que los componentes no están acoplados entre sí y nono se comunican entre sí aunque formen parte del mismo sistema
                                                      3. Taxonomía
                                                        1. Aplicaciones de un solo nivel
                                                          1. las tres principales líneas de funcionalidad se combinan dentro de un solo componente, es decir, no hay distribución
                                                          2. Aplicaciones de dos niveles
                                                            1. dividen las principales líneas de funcionalidad en dos tipos de componentes
                                                            2. Aplicaciones de tres niveles
                                                              1. dividen las principales líneas de funcionalidad en tres tipos de componentes
                                                              2. Aplicaciones de varios niveles
                                                                1. Muchas aplicaciones tienen una amplia funcionalidad y requieren el uso de varios servicios adicionales porquerealizando el rol empresarial subyacente
                                                            3. Modelos
                                                              1. Cliente - Servidor
                                                                1. Este es un modelo de dos niveles en el quelas tres líneas principales de funcionalidad se dividen en dos tipos de componentes
                                                                  1. Duración del cliente y del servidor
                                                                    1. el servidor se ejecuta continuamente y el cliente se conecta cuando es necesario
                                                                    2. Lados activos y pasivos de la conexión
                                                                      1. El componente que inicia una conexión se describe como el lado activo y el componente que esperapara las solicitudes de conexión se describe como el lado pasivo
                                                                      2. El modelo arquitectónico de CS
                                                                        1. es una arquitectura lógica; no especifica las ubicaciones físicas relativas de los componentes, por lo quepuede estar tanto en la misma computadora como en diferentes computadoras
                                                                        2. Variantes del modelo CS
                                                                          1. fat server
                                                                            1. (cliente ligero) la mayoría del trabajo se realiza en el servidor
                                                                            2. fat client
                                                                              1. (servidor ligero), la mayor parte del trabajo es realizado en el cliente
                                                                              2. Variantes equilibradas
                                                                                1. el trabajo se comparte de manera más uniforme entre loscomponentes
                                                                              3. Servicios con estado versus servicios sin estado
                                                                                1. proporciona una comparación de servicios
                                                                                  1. con estado, en la que el proceso del servidor realiza un seguimiento de el estado de la aplicación
                                                                                    1. con servicios sin estado, en el que el servidor trata cada nueva solicitud de cliente independientemente y no conserva información de estado
                                                                                2. Sistemas CS modulares y jerárquicos
                                                                                  1. Modular
                                                                                    1. Tiene ventajas adicionales en términos de transparencia y seguridad
                                                                                    2. Jerárquico
                                                                                      1. un solo componente necesita acceder a dos bases de datos separadas
                                                                                3. Arquitecturas de tres y varios niveles
                                                                                  1. Seguridad
                                                                                    1. No debe haber acceso no autorizado a los datos
                                                                                    2. Robustez
                                                                                      1. No debe haber corrupción de datos y el sistema debe permanecerconsistente en todo momento
                                                                                      2. Escalabilidad
                                                                                        1. Debería haber una forma sencilla de ampliar la capacidada medida que crece la base
                                                                                        2. Flexibilidad
                                                                                          1. Poder cambiar o agregar funciones
                                                                                          2. Disponibilidad
                                                                                            1. Los clientes deben poder acceder al servicio enen cualquier momento
                                                                                          3. Peer-to-Peer
                                                                                            1. Características de las aplicaciones
                                                                                              1. Los compañeros se comunican con otros para lograr su función
                                                                                                1. Las aplicaciones suelen tener un alcance limitado
                                                                                                  1. La conectividad es ad hoc (es decir, puede ser espontánea, no planificada y no estructurada)
                                                                                                    1. Los compañeros pueden interactuar con otros en cualquier orden y en cualquier momento
                                                                                                      1. Peer-to-peer se adapta bien a aplicaciones móviles en dispositivos móviles.
                                                                                                      2. Complejidad de la conectividad
                                                                                                        1. Es la cantidad de conexiones
                                                                                                          1. donde P es el número de pares presentes y C es el número máximo de conexiones resultante
                                                                                                            1. C = (C * (C - 1)) / 2
                                                                                                        2. Exploración del comportamiento
                                                                                                          1. una aplicación popular para arquitecturas peer-to-peer es el intercambio de medios (como fotos y canciones)
                                                                                                            1. y es especialmente popular en plataformas móviles como teléfonos y tabletas.
                                                                                                        3. Objetos distribuidos
                                                                                                          1. divide la funcionalidadde una aplicación en muchos componentes pequeños (basados ​​en los objetos en el código)
                                                                                                            1. El código orientado a objetos separa la lógica del programa en secciones relacionadas funcionalmente y / o específicas relacionadas con datos (los objetos)
                                                                                                              1. El enfoque de los objetos distribuidos apoya mejor las decisiones en tiempo de ejecución para la ubicación de instancias de componentes
                                                                                                          2. Middleware: soporte para arquitecturas de software
                                                                                                            1. es esencialmente una capa de software que se encuentra conceptualmente entre los procesos y la red.de computadoras
                                                                                                              1. Funcionamiento
                                                                                                                1. proporciona un identificador único para cada objeto
                                                                                                                  1. almacenada de qué objetos y recursos están presentes, y donde están ubicados
                                                                                                                    1. no forma parte de ninguna de las aplicaciones que admite
                                                                                                                      1. los objetos no necesitan tener ningúna información relativa a la dirección de los otros componentes
                                                                                                                      2. Proporciona a las aplicaciones la abstracción de una única plataforma de procesamiento
                                                                                                                        1. Proporciona una serie de servicios a las aplicaciones para admitir software basado en componentes
                                                                                                                    2. Modelos de sistema de recursos colectivos y provisión de recursos de cómputo
                                                                                                                      1. Clústers
                                                                                                                        1. se basa en el uso de un grupo dedicado de unidades de procesamiento, generalmente de propiedad por una sola organización y, a menudo, reservado para ejecutar aplicaciones específicas
                                                                                                                        2. Grid
                                                                                                                          1. se basa en recursos informáticos distribuidos físicamente que se utilizan de manera cooperativa para ejecutar una o más aplicaciones
                                                                                                                          2. Data Centers
                                                                                                                            1. se caracterizan por colecciones muy grandes de recursos de procesamiento y almacenamiento propiedad de una empresa de prestación de servicios
                                                                                                                            2. Clouds
                                                                                                                              1. se puede considerar como un conjunto de servicios informáticos, incluidos el procesamiento y el almacenamiento,que es proporcionado de forma virtualizada por un proveedor de servicios.
                                                                                                                              2. Virtualización de hardware
                                                                                                                                1. Máquina virtual Java
                                                                                                                                  1. Java implementa una máquina virtual específica, la JVM, que ofrece una interfaz coherente para los programas Java independientemente del sistema operativo y la arquitectura reales.
                                                                                                                                  2. Máquinas virtuales
                                                                                                                                    1. es un proceso que se ejecuta en la computadora física y presenta una interfaz para el proceso de la aplicación, que imita la de la computadora real
                                                                                                                                  3. Configuraciones estáticas y dinámicas
                                                                                                                                    1. Configuración estática
                                                                                                                                      1. se logra de forma predeterminada al crear aplicaciones multicomponente
                                                                                                                                      2. Configuración dinámica
                                                                                                                                        1. aumenta la flexibilidad del tiempo de ejecución y potencialmente mejora la eficiencia y la solidez
                                                                                                                                        2. Conciencia del contexto
                                                                                                                                          1. ajusta dinámicamente su comportamiento o configuración para adaptarse al entorno o condiciones de operación
                                                                                                                                        3. Requisitos no funcionales de aplicaciones distribuidas
                                                                                                                                          1. Robustez, disponibilidad, consistencia, rendimiento, escalabilidad, extensibilidad, transparencia, usabilidad
                                                                                                                                            1. Replicación
                                                                                                                                              1. 1. Los datos son de solo lectura en todas las réplicas
                                                                                                                                                1. 2. La replicación se implementa de modo que solo se pueda escribir una copia de los datos y la otralas copias son legibles.
                                                                                                                                                  1. 3. La replicación se implementa de manera que todas las copias de los datos se pueden escribir
                                                                                                                                                  2. Semántica de replicación
                                                                                                                                                    1. ¿Qué debería suceder cuando la copia maestra deja de estar disponible?
                                                                                                                                                      1. si se producen actualizaciones en la copia de seguridad y luego también falla
                                                                                                                                                        1. ¿Están preasignados los roles de maestro y de respaldo o surgen dinámicamente del sistema?
                                                                                                                                                  3. Bibliotecas de software
                                                                                                                                                    1. es una colección de funciones de programa que están relacionadas de alguna manera
                                                                                                                                                      1. Refactorizar
                                                                                                                                                        1. existen oportunidades para mejorar la estructura del código dividiéndolo en métodos adicionales y posiblemente incluso creando clases adicionales
                                                                                                                                                        2. Vinculación
                                                                                                                                                          1. Enlace Estático
                                                                                                                                                            1. se realiza cuando se crea un componente de software
                                                                                                                                                            2. Enlace Dinámico
                                                                                                                                                              1. se realiza en tiempo de ejecución
                                                                                                                                                            3. Característica dependiente del idioma
                                                                                                                                                              1. contiene la definición de la clase y sus métodos y declarará cualquier variable miembro a nivel de clase
                                                                                                                                                                1. puede contener las definiciones de constantes, estructuras, enumeraciones y otros constructos utilizados en la clase
                                                                                                                                                          2. La relación entre aplicaciones distribuidas y redes
                                                                                                                                                            1. Los sistemas distribuidos agregan administración, estructura y, lo que es más significativo, transparencia además defuncionalidad proporcionada por las redes subyacentes para lograr su conectividad y comunicación
                                                                                                                                                              1. Por lo tanto, las aplicaciones distribuidas deben considerarse como si estuvieran en una capa conceptualmente por encima de la parte superior.de la pila de protocolos de red y no como parte de la capa de aplicación
                                                                                                                                                            2. Transparencia desde el punto de vista de la arquitectura
                                                                                                                                                              1. Acceder a la transparencia
                                                                                                                                                                1. Transparencia de ubicación
                                                                                                                                                                  1. Transparencia de replicación
                                                                                                                                                                    1. Transparencia de fallas
                                                                                                                                                                      1. Escala de transparencia
                                                                                                                                                                        1. Transparencia en el desempeño
                                                                                                                                                                        Show full summary Hide full summary

                                                                                                                                                                        Similar

                                                                                                                                                                        arquitectura del siglo XIX Y XX
                                                                                                                                                                        andres silva a
                                                                                                                                                                        Arte Barroco
                                                                                                                                                                        juanmadj
                                                                                                                                                                        INICIACIÓN A LA ARQUITECTURA
                                                                                                                                                                        ma.jose95
                                                                                                                                                                        Mapa Conceptual de la arquitectura de base de datos
                                                                                                                                                                        Alan Alvarado
                                                                                                                                                                        Mapa Conceptual Hardware y Software
                                                                                                                                                                        Jeferson Alfonso Alvarado Suarez
                                                                                                                                                                        Abreviaciones comunes en programación web
                                                                                                                                                                        Diego Santos
                                                                                                                                                                        Repaso Historia de la Arquitectura II
                                                                                                                                                                        Julieta Cantú Delgado
                                                                                                                                                                        Mesopotamia
                                                                                                                                                                        harrycms
                                                                                                                                                                        Los ordenadores
                                                                                                                                                                        Adela Rico Torres
                                                                                                                                                                        Ingeniería de Software
                                                                                                                                                                        Michael F. Gonzalez
                                                                                                                                                                        Evaluación Sistemas informáticos
                                                                                                                                                                        domatoga