Temos uma aplicação onde toda ela foi construída com EJB’s.
De início, usavamos apenas as interfaces remotas, mas depois de um tempo, corrigimos para usar as remotas apenas onde realmente era necessário.
Só que usar EJB me parece pesado, já que é necessário criar um “link” para cada EJB no momento em que a aplicação é iniciada no servidor (uso o Glassfish 3.1).
Ai entra minha dúvida, EJB realmente é pesado (tenho em torno de 300 ejb’s nesse sistema)?
Vejo que muitos desenvolvedores usam CDI, mas pelas minhas pesquisas, CDI não muda muita coisa.
Seria vantajoso, pensando em consumo de memória e processamento, trocar pelo EJB por CDI?
Pode ser que nem um nem outro. Fale o que está atendendo de fato. Qual(is) tipo(s) front-end os usuários utilizam?
Nesse ponto eu acho que o esforço não compensa … a não ser que você esteja falando de EJB 2 …
Se for referente a este mesmo caso, para atender requisições web/HTTP não é necessário EJB nem CDI. Se usar será excesso de engenharia.