【发布时间】:2012-02-26 11:43:22
【问题描述】:
对于同一个 Web 应用程序,Web 容器和 EJB 容器能否位于不同的 Java EE 服务器中?
Web 容器是 Tomcat,而 EJB 容器是 JBoss?
如果Web服务器和App服务器在不同的机器上,这可能吗?
【问题讨论】:
-
JBoss AS 将 Tomcat 作为其 Web 容器在这种情况下听起来很有趣
标签: java jakarta-ee
对于同一个 Web 应用程序,Web 容器和 EJB 容器能否位于不同的 Java EE 服务器中?
Web 容器是 Tomcat,而 EJB 容器是 JBoss?
如果Web服务器和App服务器在不同的机器上,这可能吗?
【问题讨论】:
标签: java jakarta-ee
是的,所有这些都是可能的,并且这样的设置在企业设置中并不少见。毕竟,EJB 被设计为供多个客户端使用的业务服务,而不一定是 Web 应用程序。
【讨论】:
是的,他们可以。
EJB 最初是一种基于 CORBA 的分布式体系结构。后来(在 EJB 2.0 中)引入了 本地 接口以避免分布式通信的昂贵成本,但您仍然可以为您的 EJB 提供 远程 接口,以便从远程 Java 访问虚拟机。
EJB 使用 RMI/IDL CORBA 子集作为其分布式对象模型, 并使用 Java 事务服务 (JTS) 进行分布式 交易模型。当 Enterprise JavaBeans 使用 异构服务器中 EJB 互操作性的 RMI-IIOP 协议 环境,EJB 体系结构到 CORBA 的标准映射 启用以下互操作性:
使用来自一个供应商的 ORB 的客户端可以访问驻留在另一个供应商提供的 EJB 服务器上的企业 bean。
一台 EJB 服务器中的企业 bean 可以访问另一台 EJB 服务器中的企业 bean。
非 Java 平台 CORBA 客户端可以访问任何企业 bean 对象。
【讨论】: