假设像这样的经典3层JavaEE架构
所有JavaEE tutorial示例都显示了不同容器中的Web和biz层,但是在同一个JavaEE服务器中。
在他们自己的机器中是否存在将EJB分开的优点?在这种情况下,假设他们将通过RMI与Web层进行通信,是否有任何类型的JavaEE容器来管理EJB而不是JSP和servlet?
答案 0 :(得分:2)
在他们自己的机器中是否存在将EJB分开的优势?
有时,具体的非功能性需求可以决定您的应用程序设计。 例如,安全性:为了实现某些安全规范,业务层必须驻留在不直接暴露给Internet的更安全的服务器中。
可用性:如果您的业务层公开了与Web服务器不同的客户端所使用的某些服务,并且这些服务提供某种关键任务功能,则可能需要在24/7服务器上运行。
我不确定从“优势”的角度来看是看到这种解耦架构的正确方法。 我认为如果您需要达到这种要求,那么您需要支付更多的价格(在更复杂的设计中翻译)。
是否有任何类型的JavaEE容器来管理EJB而不是JSP和servlet?
是的,例如OpenEjb。