Documentos de Académico
Documentos de Profesional
Documentos de Cultura
DOCENTE:
CURSO:
ISI-S-CO-7-5
AÑO LECTIVO:
2018-2019
TABLA DE CONTENIDO
7.6 Solicitud:.............................................................................................. 12
7.7 Impactos:............................................................................................. 12
10.1 Problema.......................................................................................... 23
10.4 Aplicación......................................................................................... 25
Asimismo, no pretenden:
6.3 Capitalización:
Todos los nombres de patrones de diseño se escriben con mayúscula.
Los nombres de los grupos de patrones relacionados se escriben en
mayúsculas cuando se muestran en Figuras, pero no cuando se hace
referencia en el texto del cuerpo.
7.1 Requisito:
Declaración concisa de una sola oración que presenta el requisito
fundamental abordado por el patrón en forma de una pregunta.
7.2 Icono:
Cada descripción de patrón está acompañada por una imagen de icono
que actúa como un identificador visual.
7.3 Resumen:
Tabla de resumen, que consta de declaraciones que colectivamente
proporcionan una sinopsis concisa del patrón para propósitos de
referencia rápida.
7.4 Problema:
El problema que causa un problema y los efectos del problema se
describen en esta sección, generalmente acompañados por una figura
que ilustra con más detalle el "estado del problema".
7.5 Solución:
Esto representa la solución de diseño propuesta por el patrón para
resolver el problema y cumplir el requisito. Es una breve declaración
seguida de un diagrama que comunica de manera concisa el estado final
de la solución.
7.6 Solicitud:
Describe cómo se puede aplicar el patrón. Puede incluir pautas, detalles
de implementación y, a veces, incluso un proceso sugerido.
7.7 Impactos:
Destaca las consecuencias comunes, los costos y los requisitos
asociados con la aplicación de un patrón.
7.8 Relaciones:
Es importante comprender los requisitos y las dependencias que pueden
tener un patrón y los efectos de su aplicación sobre otros patrones.
Service facade
Redundant Implementation
Partial Validation
UI Mediator
9 SERVICE FACADE
Resumen del perfil:
9.1 Problema
Cuando un servicio está sujeto a cambios ya sea debido a cambios en el contrato
o en su implementación subyacente, esta lógica de servicio central puede
encontrarse ampliada y aumentada para adaptarse a ese cambio. Como
resultado, el conjunto inicial de la lógica del servicio central con la lógica de
procesamiento específica del contrato o la implementación puede eventualmente
resultar en desafíos de tiempo de diseño y tiempo de ejecución.
Por Ejemplo:
• Los patrones de uso de los recursos compartidos a los que accede el servicio
se modifican, lo que da como resultado cambios en el comportamiento del
servicio establecido que terminan afectando negativamente a los consumidores
de servicios existentes.
9.2 Solución
La lógica de fachada se inserta en la arquitectura del servicio para establecer
una o más capas de abstracción que pueden acomodar cambios futuros en el
contrato de servicio, la lógica del servicio y la implementación del servicio
subyacente.
9.3 Aplicación
La lógica de fachada de servicio se considera parte de la lógica de servicio
general pero distinto de la lógica de servicio central, de la siguiente manera:
Lógica de retransmisión.
Lógica de agente.
Corrección de comportamiento.
Requisitos específicos del contrato.
Service Refactoring
Service Decomposition
Proxy Capability
Agnostic Sub-Controller
Inventory Endpoint
Distributed Capacidad
9.6 Caso de estudio
Los arquitectos de FRC deciden diseñar un componente de fachada de servicio
que se utilizará para vincularse con el contrato oficial de WSDL para el servicio
de evaluaciones apeladas. El componente de fachada se llama apropiadamente
Data Relayer, y su responsabilidad principal es recibir solicitudes del consumidor
del servicio a través del contrato WSDL estandarizado, retransmitir esas
solicitudes a los componentes de envoltura internos correspondientes y luego
transmitir las respuestas al consumidor del servicio.
9.7 Implementación
CLASE CHECKFACADE
CALSE AVION
CLASE HOTEL
SOLUCION DE LA FACHADA
Ventajas Desventajas
* La implementación de este * Se requiere un esfuerzo adicional para
patrón permite el aumento de la mantener la gobernabilidad todas las
disponibilidad del servicio. implementaciones redundantes en
* Mejora la confiabilidad y sincronía.
escalabilidad de los servicios y el * Se incrementan los requerimientos de
inventario de servicios en su infraestructura y asociados, demanda
conjunto. operativas relacionadas con el gobierno.
* Autonomía del servicio.
10.1 Problema
Un servicio que se está reutilizando activamente introduce un posible
punto único de falla que puede poner en peligro la confiabilidad de todas
las composiciones en las que participa si se produce una condición de
error inesperado.
Los servicios agnósticos son propensos a ser reutilizados repetidamente
por diferentes composiciones de servicios. Como resultado, cada servicio
independiente puede introducir un único punto de falla para cada
composición. Teniendo en cuenta el énfasis en la reutilización repetida
dentro de la orientación al servicio, es fácilmente previsible que cada
composición compleja esté compuesta por múltiples servicios agnósticos
que introducen múltiples puntos potenciales de falla
10.2 Solución
Los servicios reutilizables se pueden implementar a través de
implementaciones redundantes o con soporte de conmutación por error.
Se pueden implementar múltiples implementaciones de servicios con un
alto potencial de reutilización o que proporcionan una funcionalidad crítica
para garantizar una alta disponibilidad y una mayor confiabilidad, incluso
cuando ocurren excepciones inesperadas o interrupciones.
Tener implementaciones redundantes de servicios agnósticos proporciona
protección contra fallas en caso de que alguna implementación caiga
10.3 Solicitud
La misma implementación de servicio se implementa de forma redundante
o es compatible con la infraestructura con funciones de redundancia.
Cuando los servicios se implementan de forma redundante, hay varias
formas en que se puede aplicar este patrón:
o Se pueden establecer diferentes implementaciones de servicios
redundantes para diferentes conjuntos de consumidores de
servicios.
o Una implementación de servicio se designa como el punto de
contacto oficial para los consumidores, pero está respaldada por
una o más implementaciones de respaldo que se utilizan en caso
de falla o falta de disponibilidad.
10.4 Aplicación
La implementación del mismo servicio se implementa redundantemente o es
apoyada por infraestructura con características de redundancia.
10.5 Impacto
Si bien la aplicación de Implementación redundante mejorará la autonomía, la
confiabilidad y la escalabilidad de los servicios y el inventario de servicios en su
conjunto, claramente trae consigo algunos impactos tangibles, los principales de
los cuales son el aumento de los requisitos de infraestructura y las demandas
asociadas de gobierno relacionadas con las operaciones.
10.8 Implementación
Disponibilidad de un servicio mediante un balanceador de carga Haproxy.
Haproxy
Servidor web 1
Servidor web 2
8.- Se edita el archivo html en los dos servidores web mediante el comando nano
/var/www/html/index.html (SERVIDOR 1 y SERVIDOR 2)
9.- En la máquina virtual donde está alojado el balanceador de carga abrimos
nuestro navegador web e ingresamos la dirección ip de la máquina virtual en
donde está instalado el haproxy y se verifica que está utilizando los dos
servidores web.
11 CONCLUSIONES
11.1 Ginger Pizarro
El patrón de implementación redundante ocurre cuando un servicio es reutilizado
en varias composiciones activamente y tiene un punto de falla que pone en
peligro la fiabilidad de todas las composiciones generando un error, para lo cual
este patrón usa servicios de forma redundante o con soporte failover
(conmutación por error) en el caso de llegar a fallar un servicio, existe uno
alterno.
11.2 Evelyn Quijije
Los patrones ayudan a poder estructurar para poder resolver un problema en
específico. Los patrones de diseño ayudan a estandarizar el código haciendo
que la programación sea más comprensible para los programadores. Es decir,
los patrones de diseño son muy útiles, es por ello que son conocidos como las
mejores prácticas en el desarrollo y construcción de software.
12 PREGUNTAS
12.1 Service Facade
¿En qué se centra el patrón de diseño Service Facade?