Submitted by Setor de Tratamento da Informa??o - BC/PUCRS (tede2@pucrs.br) on 2015-05-04T12:25:44Z
No. of bitstreams: 1
467903 - Texto Completo.pdf: 2071415 bytes, checksum: 7b9c07b7d2604d46d4b4ea8d6c7bbfac (MD5) / Made available in DSpace on 2015-05-04T12:25:44Z (GMT). No. of bitstreams: 1
467903 - Texto Completo.pdf: 2071415 bytes, checksum: 7b9c07b7d2604d46d4b4ea8d6c7bbfac (MD5)
Previous issue date: 2015-03-27 / Fault tolerance has become an important mean to achieve high availability in computational
systems. However, building fault tolerant architectures is not a trivial task. Reflection in
Meta-level architectures has been used for years as a mean for implementation of nonfunctional
requirements. In this way it is possible to have a clear separation of its
implementation from the implementation of the business logic itself (functional requirements)
in layers or levels. These levels have become known, respectively, as base-level and metalevel
and are regularly used in nowadays systems? architecture since they bring several
benefits such as increased reuse and reduced complexity, furthermore, they provide better
responsibilities separation among systems? components.
On the other hand, if the meta-level is a useful architecture artifice there is still the need to
build the meta-level components that intend to handle fault tolerance in application?s
services, the components need to be implemented and integrated to the system?s
architecture, which involves some development effort and complexity.
This work presents a proposal to build, automatically and in runtime, the meta-level
components for fault tolerance handling in application?s services. More precisely, it intends
to propose a framework ? named JFault ? which using reflection and dynamic compilation
will leverage those requirements transparently and with minor changes in the system.
The framework is implemented in Java, language that supports both reflection and dynamic
compilation, but could be built in any programming language that supports such APIs. / Toler?ncia a falhas tornou-se um importante meio para se garantir alta disponibilidade de
sistemas computacionais. No entanto, a constru??o de arquiteturas tolerantes a falhas n?o
? uma tarefa trivial. Reflex?o em arquiteturas de meta-n?vel tem sido usada h? anos como
um meio para implementa??o de requisitos n?o-funcionais. Dessa forma ? poss?vel ter uma
separa??o clara e em n?veis entre a implementa??o da l?gica de neg?cios do sistema
(requisitos funcionais) e as relacionadas ao uso da aplica??o em termos de desempenho,
usabilidade, seguran?a, disponibilidade, etc (n?o funcionais). Estes n?veis se tornaram
conhecidos na literatura, respectivamente, como n?vel-base e meta-n?vel e s?o
frequentemente utilizados em sistemas hoje em dia visto que trazem v?rios benef?cios como
aumento de reuso de c?digo e redu??o de acoplamento entre os elementos da arquitetura,
al?m de trazer uma melhor divis?o de responsabilidades entre os componentes do sistema.
Por outro lado, se as arquiteturas de meta-n?vel se tornaram um artif?cio ?til, existe a
necessidade de se implementar os componentes de meta-n?vel respons?veis pela cria??o
de servi?os tolerantes a falhas, o que envolve esfor?o de desenvolvimento, adapta??es no
sistema e geralmente adiciona certa complexidade ? arquitetura.
Este trabalho apresenta uma proposta de construir, de forma autom?tica e em tempo de
execu??o, os componentes de meta-n?vel para toler?ncia a falhas em servi?os de
aplica??es. Mais precisamente, pretende propor um framework ? chamado JFault - que
usando reflex?o e compila??o din?mica se prop?e a preencher esse requisito de forma
transparente e com pequenas altera??es no sistema.
O framework ? implementado em Java, linguagem que suporta tanto reflex?o como
compila??o din?mica, mas poderia ser constru?do em qualquer linguagem de programa??o
que suporta tais APIs.
Identifer | oai:union.ndltd.org:IBICT/oai:tede2.pucrs.br:tede/5963 |
Date | 27 March 2015 |
Creators | Scherer, Marcio Gustavo Gusm?o |
Contributors | Dotti, Fernando Lu?s |
Publisher | Pontif?cia Universidade Cat?lica do Rio Grande do Sul, Programa de P?s-Gradua??o em Ci?ncia da Computa??o, PUCRS, Brasil, Faculdade de Inform?tica |
Source Sets | IBICT Brazilian ETDs |
Language | Portuguese |
Detected Language | English |
Type | info:eu-repo/semantics/publishedVersion, info:eu-repo/semantics/masterThesis |
Format | application/pdf |
Source | reponame:Biblioteca Digital de Teses e Dissertações da PUC_RS, instname:Pontifícia Universidade Católica do Rio Grande do Sul, instacron:PUC_RS |
Rights | info:eu-repo/semantics/openAccess |
Relation | 1974996533081274470, 600, 600, 600, -3008542510401149144, 3671711205811204509 |
Page generated in 0.0018 seconds