gpt4 book ai didi

java - 具有更多注入(inject) EJB 实例的无状态 EJB

转载 作者:行者123 更新时间:2023-11-30 09:46:09 24 4
gpt4 key购买 nike

我知道无状态 EJB 存储在池中并根据需要实例化,我的问题是,当有更多 EJB 依赖项时会发生什么,例如像这样:

@Remote
@Stateless
public class Master_EJB{
@EJB
private EJB_A ejb_A;

@EJB
private EJB_B ejb_B;
}

EJB_A 和 EJB_B 也是无状态 EJB。

在最坏的情况下,如果同时有两个请求,服务器将从池中检索两个 Master_EJB 实例(或在需要时创建)。

但是如果从这两个调用中,一个只需要 EJB_A 而另一个只需要 EJB_B,则需要多少个实例:4 (2 Master_EJB + 1 EJB_A + 1 EJB_B) 或 6 (2 Master_EJB + 2 EJB_A + 2 EJB_B )?

最佳答案

EJB_A 和 EJB_B 是无状态的还是有状态的?

如果是无状态的,答案取决于使用的容器/池类型和最近的情况(请求数、服务器负载等)。如果有状态和容器将实例化 2 个 Master_EJB 实例,则将实例化两个 EJB_A 实例,同时将实例化两个 EJB_B 实例。

请记住,容器可能创建两个 Master_EJB 实例 - 这再次取决于容器本身和当前情况(同样,容器可能决定仅使用一个 Master_EJB 实例来处理请求)。

关于java - 具有更多注入(inject) EJB 实例的无状态 EJB,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7256441/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com