Arquitectura de Softwareisis... · Ingeniería de Sistemas y Computación. Agenda del día...

18
Arquitectura de Software Disponibilidad Ingeniería de Sistemas y Computación

Transcript of Arquitectura de Softwareisis... · Ingeniería de Sistemas y Computación. Agenda del día...

Page 1: Arquitectura de Softwareisis... · Ingeniería de Sistemas y Computación. Agenda del día Introducción 2 Tácticas arquitecturales. Disponibilidad •La capacidad de que el sistema

Arquitectura de SoftwareDisponibilidad

Ingeniería de Sistemas y Computación

Page 2: Arquitectura de Softwareisis... · Ingeniería de Sistemas y Computación. Agenda del día Introducción 2 Tácticas arquitecturales. Disponibilidad •La capacidad de que el sistema

Agenda del día

Introducción

2

Tácticas arquitecturales

Page 3: Arquitectura de Softwareisis... · Ingeniería de Sistemas y Computación. Agenda del día Introducción 2 Tácticas arquitecturales. Disponibilidad •La capacidad de que el sistema

Disponibilidad

• La capacidad de que el sistema esté total o

parcialmente operativo al mismo tiempo que es

requerido para manejar eficazmente las fallas que

puedan afectar la disponibilidad del sistema

• La disponibilidad de un sistema se basa en el

concepto de confiabilidad mediante la adición de

la noción de recuperación

3

Page 4: Arquitectura de Softwareisis... · Ingeniería de Sistemas y Computación. Agenda del día Introducción 2 Tácticas arquitecturales. Disponibilidad •La capacidad de que el sistema

Disponibilidad (2)

• En la práctica, los requisitos de disponibilidad del

sistema se desarrollan en función de la

disponibilidad de estado estacionario (a

diferencia de la disponibilidad instantánea)

• Disponibilidad de estado estacionario es la

medición del tiempo de funcionamiento de un

sistema durante un período suficientemente largo

(90 días, un año, etc.)

4

Page 5: Arquitectura de Softwareisis... · Ingeniería de Sistemas y Computación. Agenda del día Introducción 2 Tácticas arquitecturales. Disponibilidad •La capacidad de que el sistema

Disponibilidad (3)

• MTBF mean time between failures*

• MTTR mean time to repair

5

* derived based on the expected value of the system’s fault

probability density function

Page 6: Arquitectura de Softwareisis... · Ingeniería de Sistemas y Computación. Agenda del día Introducción 2 Tácticas arquitecturales. Disponibilidad •La capacidad de que el sistema

Disponibilidad (4)

• Ejemplos de requerimientos de disponibilidad*

6

* El término alta disponibilidad normalmente se refiere a una

disponibilidad del 99,999% ("cinco nueves") o mayor

Page 7: Arquitectura de Softwareisis... · Ingeniería de Sistemas y Computación. Agenda del día Introducción 2 Tácticas arquitecturales. Disponibilidad •La capacidad de que el sistema

Agenda del día

Introducción

7

Tácticas arquitecturales

Page 8: Arquitectura de Softwareisis... · Ingeniería de Sistemas y Computación. Agenda del día Introducción 2 Tácticas arquitecturales. Disponibilidad •La capacidad de que el sistema

Tácticas Arquitecturales

• Objetivo Permitir soportar las fallas del

sistema de tal manera que el servicio entregado

por dicho sistema siga siendo compatible con su

especificación

• Las faltas del sistema son escaladas a fallas una

vez que los servicios se ven afectados hasta el

punto en que ya no cumplen con sus

especificaciones

8

Page 9: Arquitectura de Softwareisis... · Ingeniería de Sistemas y Computación. Agenda del día Introducción 2 Tácticas arquitecturales. Disponibilidad •La capacidad de que el sistema

Tácticas Arquitecturales (2)

• Detección de Fallas

• Recuperación de Fallas

• Prevención de Fallas

9

Page 10: Arquitectura de Softwareisis... · Ingeniería de Sistemas y Computación. Agenda del día Introducción 2 Tácticas arquitecturales. Disponibilidad •La capacidad de que el sistema

Tácticas Arquitecturales (3)

• Ping / Echo

• Monitor del sistema

– Watchdog

– Heatbeat

• Detección de excepciones

– System exceptions

– Parameter fence

– Parameter typing

• Votar (Voting)

– Triple Modular Redundancy (TRM)

10

Detección de Fallas

Page 11: Arquitectura de Softwareisis... · Ingeniería de Sistemas y Computación. Agenda del día Introducción 2 Tácticas arquitecturales. Disponibilidad •La capacidad de que el sistema

Tácticas Arquitecturales (4)

• Redundancia Activa

• Redundancia Pasiva

• Repuesto (Spare)

• Manejo de Excepciones

• Actualización de Software

– Function Patch

– Class Patch

– Hitless In-Service Software Upgrade (ISSU)

11

Recuperación de Fallas

Preparation and Repair

Page 12: Arquitectura de Softwareisis... · Ingeniería de Sistemas y Computación. Agenda del día Introducción 2 Tácticas arquitecturales. Disponibilidad •La capacidad de que el sistema

Tácticas Arquitecturales (5)

12

Page 13: Arquitectura de Softwareisis... · Ingeniería de Sistemas y Computación. Agenda del día Introducción 2 Tácticas arquitecturales. Disponibilidad •La capacidad de que el sistema

Tácticas Arquitecturales (6)

• Sombra (Shadow)

• Resincronización de estado

• Rollback

– Coordinated Checkpointed

– Uncoordinated Checlpointed

• Reinicio escalado

13

Recuperación de Fallas

Reintroduction

Page 14: Arquitectura de Softwareisis... · Ingeniería de Sistemas y Computación. Agenda del día Introducción 2 Tácticas arquitecturales. Disponibilidad •La capacidad de que el sistema

Tácticas Arquitecturales (7)

14

Prevención de Fallas

• Retiro del servicio

• Transacciones

– Atomic Commit Protocol

• Monitor de Procesos

• Prevención de Excepciones

– Exception Classes

– Smart Pointers / Wrappers

Page 15: Arquitectura de Softwareisis... · Ingeniería de Sistemas y Computación. Agenda del día Introducción 2 Tácticas arquitecturales. Disponibilidad •La capacidad de que el sistema

Tácticas Arquitecturales (8)

15

Page 16: Arquitectura de Softwareisis... · Ingeniería de Sistemas y Computación. Agenda del día Introducción 2 Tácticas arquitecturales. Disponibilidad •La capacidad de que el sistema

Tácticas Arquitecturales (9)

16

Page 17: Arquitectura de Softwareisis... · Ingeniería de Sistemas y Computación. Agenda del día Introducción 2 Tácticas arquitecturales. Disponibilidad •La capacidad de que el sistema

17

¿Preguntas?

Page 18: Arquitectura de Softwareisis... · Ingeniería de Sistemas y Computación. Agenda del día Introducción 2 Tácticas arquitecturales. Disponibilidad •La capacidad de que el sistema

Referencias

• James Scott, Rick Kazman, Boeing Corporation, Software

Engineering Institute. Realizing and Refining Architectural

Tactics: Availability. TECHNICAL REPORT. CMU/SEI-

2009-TR-006. August 2009

18