Spring POJO真的比无状体的会话EJB(SLSB)快吗?

Spring POJO真的比无状体的会话EJB(SLSB)快吗?

目前,很多人都认为 spring 不论在那个方面都会比 SLSB 有更高的效率,真的是这样吗?

spring 中的 POJO 的生命周期可以是 Singlton 或每请求创建(或是 2.0 支持的 session application,request 等范围), SLSB 是通过实例池经心管理的。如果 spring POJO 不采用 singlton 的形式那么就需要承受创建和销毁 POJO 的消耗,当然 SLSB 的出池和入池同样会有同步的消耗,由于现在的虚拟机对象的创建和消耗速度大幅提高所以不一定比 SLSB 获取的速度慢,但是如果每个对象构建的资源消耗很大如总是需要构建或初始化复杂对象,那么 SLSB 的速度显然有优势。如果 spring 采用 singleton 模式,那么其中如果需要同步,则虽然省去了创建和销毁的消耗,但是大量的同步会使性能的杀手。并且在多 CPU 的服务器上没有同步的多线程并行效果更好(可以在不同的处理器上单独运行)

你可能感兴趣的:(Spring POJO真的比无状体的会话EJB(SLSB)快吗?)