Questão FC266250
A tecnologia Java RMI (Remote Method Invocation) permite que um objeto em uma instância da máquina virtual Java invoque métodos de um objeto presente em outra instância da JVM. O d
Plataforma Java EE
IDECAN · 2019
A tecnologia Java RMI (Remote Method Invocation) permite que um objeto em uma instância da máquina virtual Java invoque métodos de um objeto presente em outra instância da JVM. O desenvolvedor Java precisa considerar o comportamento diferente no tratamento da passagem de parâmetros na invocação de um método remoto. Qual alternativa apresenta uma precaução legítima nesse cenário?
- Apesar de ser permitida a invocação de métodos remotos, nenhum dos parâmetros passados ao método remoto pode representar um objeto remoto.
- O desenvolvedor precisa considerar a sobrecarga da invocação, uma vez que todos os objetos serializáveis não remotos são copiados e passados por valor quando informados como parâmetros.
- Quando a referência a um objeto remoto é recebida, ela não pode ser utilizada para realizar chamadas RMI no objeto referenciado.
- Somente tipos primitivos podem ser usados como parâmetros a objetos remotos.
- Somente tipos estruturados como classes podem ser usados como parâmetros a objetos remotos.
Mostrar resposta e comentário
Gabarito
B
Comentário do professor
Na invocação remota via Java RMI, objetos que implementam Remote são transmitidos como referência (um proxy/stub), mas objetos não remotos que implementam Serializable são copiados e enviados por valor.
Isso implica sobrecarga: antes de chegar ao servidor, o objeto e todo o seu grafo são serializados no cliente, enviados pela rede e desserializados no servidor. Esses passos incidem custo de CPU, I/O e alocação de memória.
Além do custo, a passagem por valor produz uma cópia independente — alterações no servidor não afetam a instância original no cliente.
Portanto, projete chamadas remotas com DTOs leves, evite grandes grafos de objetos, use objetos remotos quando for necessário compartilhar estado e cuide de serialVersionUID e de campos transient para controlar o que é transmitido.
Conteúdo do catálogo FC Concursos · Atualizado em