Ola tenho uma dúvida que não consegui encontrar resposta em nenhum site, a dúvida é a seguinte:
se eu tiver um ejb utilizando outro EJB local será criada uma nova thread no servidor de aplicação?
ex:
[code]@Stateless
class A{
@EJB B b;
}
@Stateless
class B{
}[/code]
Nesse caso eu terei duas threads uma para cada EJB?
Não…agregações de EJB’s não influirão no numero de threads internas do ejb container.
Muito esquisito essa pergunta…
É que na verdade eu fiz uma implementação que tem muitas agregações de EJB, mas o cliente me mandou mudar e me deu esta justificativa.
Já faz dois dias que pesquiso na internet procurando materiais que provem que está agregação não gera threads. Você conhece algum material que aborde este assunto?
Nâo existe material pq é uma pergunta sem sentido…vc não achar nenhum autor de livro afirmando uma bobeira dessa.
O que gera thread dentro de um ejb container é uma chamada RMI para consumir algum método EJB.
Se por ventura um ejb chamar o outro…as chamadas dos agregados são colocados na mesma thread.
Ourtra coisa, provedores de EJB container ja abrem um POOL de thread pre estabelecido conforme configurado (favor consultar a documentação do seu provedor)
Para comprovar isso só utilizando um profiler para verificar o número de threads rodando no servidor?
O mais fácil é verificar os parâmetros de configuração de pool de Thread adotados pelo provedor de EJB container em uso.