0

从同一个EJB-JAR 或 EAR 中调用远程@remote接口是否会使应用服务器使用 RMI/RMI-IIOP?

或者应用服务器会非常智能并且在本地执行此调用,就好像它调用一个@local接口一样???

4

1 回答 1

1

容器不应该进行真正的@local 调用,因为@local 调用通过引用传递,@remote 调用通过值传递。但是,容器可以优化 @remote 调用,以便不命中完整的 RMI/IIOP 网络堆栈。我记得 WebSphere 做了这样的“本地”优化,我无法与其他供应商交谈。

[历史:早在早期的 EJB3 之前的 WebSphere 版本中,就有一个选项可以启用“使 @remote 看起来像 @local”的道德等价物,但我认为以后的版本不会提供此功能。]

于 2011-08-10T09:40:38.303 回答