![]() |
1
3
EJB规范没有指定如何实现集群,因此这将取决于所使用的特定实现。实际上,EJB规范是 故意地 编写的目的不是对部署进行假设:它们不要求对集群提供任何支持,而是以一种使之成为可能的方式编写的(EJB模型中的许多限制源于潜在的集群问题,例如对文件系统的访问)。然后,实现者可以自由地支持或不支持集群,并且仍然遵守规范。 在Glassfish中,对远程EJB的引用本身负责分发。看到了吗 my answer 这里有更多信息。每个请求都可能被分派到不同的节点。这可能是大多数实现的工作方式。所以我想说你的假设是正确的。 不过,我确实希望它们能够优化一个EJB调用另一个EJB的情况,并尽可能在同一节点上调度入侵。这将取决于部署是否同构(所有节点是否具有相同的bean)。同样,关于这些问题,规范有点含糊不清。但我猜大多数部署在实践中都是同质的:相同的ear部署在所有节点上。 my answer 在这里。通过远程接口在同一个.ear中进行的EJB间调用比本地调用慢3倍。听起来很大,但我们说的是毫秒,所以 相对的 开销取决于方法的实际作用。我不知道其他应用程序的性能。服务器。 希望有帮助。 |
![]() |
Marco Boom · Java RMI在对存根调用函数时冻结 7 年前 |
![]() |
Yulin · 方法在序列化后是否占用空间? 7 年前 |
![]() |
lz96 · 如何为接口中的属性指定@Throws 7 年前 |
![]() |
Hanzyusuf · 无法将(服务)对象从RMI服务器发送到客户端 8 年前 |
![]() |
billc.cn · 使用RMI以本地模式连接到JMX(无端口) 9 年前 |
![]() |
ccc · 如何从RMI运行时删除远程对象 9 年前 |