fisiologia
Curso: Ciência da Computação
Java RMI
Bauru
2013
Java RMI
Java RMI é uma biblioteca que permite que uma aplicação rodando em uma máquina efetue chamada a métodos, objetos instanciados em outra máquina, bem como a processos de outras máquinas que poderão se comunicar perfeitamente. Mesmo a tecnologia do RMI ser relativamente fácil, o seu uso põe o desenvolvedor Java frente à um novo paradigma, o mundo da computação de objetos distribuídos.
O RMI possibilita que os desenvolvedores elaborem programas distribuídos em JAVA com a mesma sintaxe e semântica usada em programas não distribuídos. Para que esse desenvolvimento ocorra de forma correta é necessário realizar um mapeamento com as classes JAVA e objetos.
A arquitetura RMI define como os objetos se comportam, como e quando exceções podem ocorrer, como a memória é gerenciada e como os parâmetros são passados e retornados de métodos remotos. Essa arquitetura estende a segurança e robustez da arquitetura Java para o mundo da computação distribuída.
Sendo baseada em um importante princípio em que a definição do comportamento e a implementação do comportamento são conceitos separados. A tecnologia RMI permite que o código que define o comportamento e o código que implementa o comportamento permanecerem separados e rodarem em JVMs separadas. A implementação do serviço remoto é codificada em uma classe. As interfaces definem o comportamento e as classes definem a implementação. A classe que implementa o comportamento roda do lado do servidor RMI. A classe que roda no cliente atua como um Proxy para o serviço remoto. Veja o seguinte diagrama.
As três camadas do RMI onde as camadas Stub e Skeleton estão abaixo dos olhos do desenvolvedor. Esta camada intercepta as chamadas de métodos feitas pelo cliente para que a variável de referência da interface redirecione essas chamadas para o serviço RMI remoto.
A próxima camada é a Remote Reference Layer. Esta