Recuperação com Base em Checkpointing: uma Abordagem Orientada a Objetos
Resumo
A recuperação de processos visa propiciar maior disponibilidade para aplicações computacionais, minimizando o tempo total de execução quando da ocorrência de falhas. Com o advento do paradigma da orientação a objetos, novos problemas foram introduzidos na atividade de recuperação quanto aos mecanismos de salvamento de estados e retomada da execução. Tendo em vista prover tolerância a falhas para aplicações computacionais na presença de falhas do sistema, e contribuir na execução do processo de recuperação de aplicações orientadas a objetos escritas em Java, objetiva-se neste trabalho o desenvolvimento de uma biblioteca que implementa os mecanismos de checkpointing e recuperação. Para a concepção do trabalho, são considerados ambos os cenários no paradigma orientado a objetos: objetos centralizados e distribuídos. São utilizados os recursos da API de serialização Java e a tecnologia Java RMI para objetos distribuídos. Neste artigo, é descrita a biblioteca proposta; são comentados alguns aspectos de implementação e resultados obtidos a partir da avaliação funcional e de desempenho temporal dos mecanismos. A apresentação de conceitos básicos restringe-se aos relacionados à área de orientação a objetos empregados no artigo.
Referências
J. S. Plank et al. Libckpt: Transparent Checkpointing under Unix. In: Usenix Technical Conference, New Orleans, 1995. Proceedings. [s.n
M. Kasbekar; et al. Issues in the Design of a Reflective Library for Checkpointing C++ Objects. In: 18th IEEE Symposium on Reliable Distributed Systems, Lausanne, Oct. 1999.
J. L. Lawall; G. Muller. Efficient Incremental Checkpointing of Java Programs. In: Intl. Conference on Dependable Systems and Networks (DSN 2000), New York, June 2000. pp. 61-70.
M. O. Killijian; J. C. Fabre; J. C. Ruiz-Garcia. Using compile-time reflection for object checkpointing. LAAS, February 1999. (Technical Report-99049).
J. Mathis. Persistence and Java Serialization. In: Java 1.1: Unleashed. Indianapolis: Sams.Net, 3ed., 1997.
S. C. Bertagnolli. Integrando Aspectos de Distribuição e de Tolerância a Falhas no Ambiente Java Reflexivo (Jreflex). Porto Alegre: PPGC da UFRGS, Julho 2000 (TI-913).
Sun Microsystems. Java Object Serialization Specification – JDK 1.2 Beta 3. Disponível em URL: ftp://ftp.javasoft.com/docs/jdk1.2/serial-spec-JDK1.2.ps. Sun Microsystems, February, 1998.
K. Arnold; G. James. The Java Programming Language. [S.l
E. K. Hansen. Checkpointing Java Programs on Standard Java Implementations using Program Transformation. Master’s Thesis. Department of Computer Science, University of Copenhagen. Nov. 1999. Disponível por www em http://hjem.get2net.dk/esben_krag_hansen/jcp/index.html.