PDF de programación - Infraestructura para Recuperación Automática ante Fallos de Sistemas de Software mediante Modelos de Control en Tiempo Real

Imágen de pdf Infraestructura para Recuperación Automática ante Fallos de Sistemas de Software mediante Modelos de Control en Tiempo Real

Infraestructura para Recuperación Automática ante Fallos de Sistemas de Software mediante Modelos de Control en Tiempo Realgráfica de visualizaciones

Publicado el 16 de Mayo del 2019
206 visualizaciones desde el 16 de Mayo del 2019
12,1 MB
175 paginas
Creado hace 6a (18/12/2012)
Universidad de Buenos Aires

Facultad de Ingeniería

Infraestructura para Recuperación Automática ante
Fallos de Sistemas de Software mediante Modelos de



Control en Tiempo Real

Aplicación a Plataformas Java EE



Tesis de Grado de Ingeniería en Informática

Orientación Sistemas Distribuidos



Alumna:



Guillermina Gabriela Galache
ggalac@fi.uba.ar - guillermina.galache@gmail.com

Directores:



Dr. Rodrigo Castro, FCEyN/UBA (externo)
Ing. Osvaldo Clua, FI/UBA



Año 2012



Tesis de Ingeniería en Informática Guillermina G. Galache - 77060

Resumen

En la presente Tesis se desarrolla una plataforma de software para posibilitar la adaptación

automática y autónoma de Sistemas Informáticos ante una degradación en su calidad de servicio.

La metodología Self-Healing ofrece ventajas particulares cuando se aplican técnicas de control
a lazo cerrado. Primero se acepta la no idealidad del sistema y el débil conocimiento de la dinámica de
su entorno y sus usuarios. Luego, se agrega una capa de supervisión que detecta estados o tendencias
no deseables y reacciona controlando parámetros de operación en pos de mitigar la degradación del
servicio.

Un factor que limita su adopción en entornos industriales es la fuerte dependencia de cada
estrategia de control particular con la herramienta específica que lo implementa, dificultando la
convergencia hacia una plataforma estándar.

Para contrarrestar esta situación, desarrollamos una herramienta genérica para diseñar e
implementar distintas estrategias de control en un contexto flexible y modular. Sus tres funciones
centrales: monitoreo, control y actuación se logran mediante componentes independientes integrados
mediante una red de datos.

Los controladores se implementan en un entorno de modelado y simulación basado en el
formalismo DEVS (Discrete Event System Specification) que permite especificar de forma
matemáticamente robusta controladores de cualquier naturaleza: continuos, a tiempo discreto, a
eventos discretos, y/o combinaciones de ellos (híbridos).

Esto facilita el desarrollo de estrategias de control acorde al enfoque System-In-The-Loop
(sistema dentro del lazo): los modelos son desarrollados, ensayados y verificados mediante
simulaciones desacopladas del sistema real a controlar (“sistema fuera del lazo”); luego, cuando el
desempeño es aceptable, las entradas y salidas del controlador son simplemente “redireccionadas”
hacia el sistema real (“sistema dentro del lazo”) para su validación.

Mediante un proceso iterativo los modelos de simulación pasan a ser ejecutados en tiempo real

convirtiéndose directamente en el producto final.

Demostramos la eficacia de la plataforma diseñando un control sencillo tipo on-off para regular
el consumo de CPU y memoria de una aplicación Web sobre Java EE. Los ensayos expusieron
dinámicas inesperadas de la aplicación controlada, y la plataforma mostró flexibilidad para adaptar el
control incorporando los nuevos conocimientos adquiridos.

Esperamos que nuestro desarrollo contribuya a disminuir la brecha existente entre la Ingeniería
de Software y la Ingeniería de Control en el contexto del aseguramiento de la calidad de servicio de
aplicaciones industriales.



2

Tesis de Ingeniería en Informática Guillermina G. Galache - 77060

Agradecimiento



Quiero agradecerles a mis directores, Dr. Rodrigo Castro e Ing. Osvaldo Clua, por haberme

orientado en la realización del presente trabajo.

A Lic. Adriana Echeverria, Ing. Hugo Pagona y Lic. Alejandro Turri por haber aceptado ser
jurados del presente trabajo y por su buena predisposición para definir rápidamente la fecha de la
defensa.

A mi familia, en especial a mi mamá y a Martin, por haberme apoyado durante toda mi carrera

e hicieron posible que pudiera llevarla adelante.

A mis amigos y especialmente a Julia por haberme ayudado con la preparación de la defensa y

en los ensayos.

Por último, quiero dedicarle este trabajo a mi hija Micaela que es quien me inspira en todo lo

que hago, y es la personita más importante en mi vida.



3

Tesis de Ingeniería en Informática Guillermina G. Galache - 77060

Contenido

Capítulo 1: Introducción................................................................................................................ 8

1.1 - Contexto............................................................................................................................. 9

1.2 - Motivación ....................................................................................................................... 10

1.3 - Definición del Problema .................................................................................................. 11

1.4 - Objetivos .......................................................................................................................... 12

1.5 - Estructura del Informe ..................................................................................................... 12

Capítulo 2: Conceptos Preliminares ............................................................................................ 14

2.1 - JVM ................................................................................................................................. 15

2.1.1 - Componentes Principales de la JVM ....................................................................... 16

2.2 - Servidores de Aplicaciones JEE ...................................................................................... 18

2.3 - Confiabilidad y Sistemas Self-Healing ............................................................................ 21

2.3.1 - ¿Qué se entiende por confiabilidad de un sistema? ................................................. 21

2.3.1.1 - Las Amenazas a la Confiabilidad del Sistema.............................................. 22

2.3.1.2 - Formas de Lograr la Confiabilidad de un Sistema ....................................... 26

2.3.2 - Elementos de los Sistemas Self-Healing ................................................................. 28

2.3.2.1 - Fault Model o modelo de defectos ............................................................... 28

2.3.2.2 - System Response o respuesta del sistema ..................................................... 29

2.3.2.3 - System Completeness o completitud del sistema .......................................... 30

2.3.2.4 - Desgin Context o contexto de diseño ........................................................... 30

2.4 - Monitoreo y Actuación .................................................................................................... 31

2.4.1 - Técnicas de Monitoreo ............................................................................................. 33

Capítulo 3: Estado del Arte ......................................................................................................... 34

3.1 - Principales enfoques en sistemas Self-Healing ............................................................... 35

3.1.1 - Self-Healing basado en Modelos de Arquitecturas .................................................. 36

3.1.2 - Self-Healing basado en Ingeniería de Control ......................................................... 39

3.2 - Trabajos previos relevantes ............................................................................................. 43

3.2.1 - JVMMon .................................................................................................................. 43

3.2.2 - Aqua ......................................................................................................................... 45

3.2.3 - Arco Iris ................................................................................................................... 47

3.2.3.1 - Extensiones Realizadas a Rainbow .............................................................. 49

3.2.3.2 - Principio de Funcionamiento de Arco Iris .................................................... 50

3.2.3.3 - Elección de Estrategias Rainbow vs Arco Iris.............................................. 51

3.2.4 - Teoría de control aplicada a un servidor Web .......................................................... 51



4

Tesis de Ingeniería en Informática Guillermina G. Galache - 77060

3.2.4.1 - Arquitectura de Apache HTTP Server: Propiedades relevantes del
sistema a controlar ...................................................................................................... 51

3.2.4.2 - Entradas de Control y Salidas Controladas .................................................. 52

3.2.4.3 - Obtención del Modelo del Sistema a Controlar ........................................... 53

3.2.4.4 - Evaluación del Modelo del sistema .............................................................. 54

3.2.4.5 - Diseño del Modelo del Controlador ............................................................. 55

3.2.5 - Análisis preliminar ................................................................................................... 55

3.3 - Relevamiento de tecnologías de Monitoreo y Actuación para la JVM ........................... 56

3.3.1 - Técnicas de Monitoreo de la JVM ........................................................................... 56

3.3.2 - Java Platform Debugger Architecture (JPDA) ......................................................... 57

3.3.2.1
  • Links de descarga
http://lwp-l.com/pdf15931

Comentarios de: Infraestructura para Recuperación Automática ante Fallos de Sistemas de Software mediante Modelos de Control en Tiempo Real (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios
Es necesario revisar y aceptar las políticas de privacidad

Revisar política de publicidad