Há diferença de performance entre EJB3 REMOTE e LOCAL na mesma JVM?
3 respostas
rafaelbrizola
Pessoal,
Alguém sabe se há diferença de performance no EJB 3 se eu chamar um ejb remoto de dentro da mesma JVM?
Exemplo: Na nossa aplicação, os ejbs e a parte web estão no mesmo glassfish (mas não no mesmo ear). Nesse caso, há diferença de performance se eu usar ejbs remotos ou locais?
Parece que no ejb 2 havia diferença, mas não sei se no ebj3 isso ainda existe.
Até o EJB3, existe sim. A idéia é que a chamada a um EJB remoto passe por toda a camada de rede, ao passo que, com um EJB local, a comunicação é direta (ou seja, o EJB remoto é menos performático).
O time da JBoss diz que esse é um problema que eles vão tentar corrigir com o próximo release do JBoss AS, que vai detectar se o cliente vai estar na mesma VM e, assim, vai agir como se fosse um EJB local (mesmo usando a interface remota). No entanto, não sei de nada relacionado à própria spec.
[]´s
Hebert_Coelho
Eu estou estudando EJB pelo EJB3 in Action, e até agora não vi diferença no seu caso viu.
Ele mostra exemplo acessando com o cara sendo Remote ou Local dentro da mesma JVM. Não sei te falar se tem algo mais complexo (estou na página 200! =P).
Hebert_Coelho
asaudate:
Até o EJB3, existe sim. A idéia é que a chamada a um EJB remoto passe por toda a camada de rede, ao passo que, com um EJB local, a comunicação é direta (ou seja, o EJB remoto é menos performático).
O time da JBoss diz que esse é um problema que eles vão tentar corrigir com o próximo release do JBoss AS, que vai detectar se o cliente vai estar na mesma VM e, assim, vai agir como se fosse um EJB local (mesmo usando a interface remota). No entanto, não sei de nada relacionado à própria spec.