J2EE之巅

 

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 的服务器上没有同步的多线程并行效果更好(可以在不同的处理器上单独运行)

posted on 2007-03-29 10:29 超越巅峰 阅读(2391) 评论(5)  编辑  收藏 所属分类: Java EE

评论

# re: Spring POJO真的比无状体的会话EJB(SLSB)快吗? 2007-03-29 11:13 itworker

田鸡赛马啊
  回复  更多评论   

# re: Spring POJO真的比无状体的会话EJB(SLSB)快吗? 2007-03-29 11:45 dennis

采用singleton 又需要同步?也许你一开始就不该采用singleton 。采用singleton 还是prototype,取决于业务对象是否具有状态。单纯地拿SLSB与spring的singleton的POJO对比才是你所想表达的吧?目前的JVM采用的都是分代GC,对象池的意义值的怀疑,我没有测试数据,不敢妄言两者性能上有什么不同。  回复  更多评论   

# re: Spring POJO真的比无状体的会话EJB(SLSB)快吗? 2007-03-29 12:54 啊啊啊啊

不知道在说什么pojo和slsb有关系吗  回复  更多评论   

# re: Spring POJO真的比无状体的会话EJB(SLSB)快吗? 2007-03-29 13:06 Jarod

我觉得用spring开发的应用不是系统效率比EJB开发的高,而是开发效率高。spring布署,配置更简单,启动要比EJB容器启动快,同时由于是POJO,应用就更加容易测了。
当然,用POJO实现业务逻辑,用EJB做对外接口也是可以的  回复  更多评论   

# re: Spring POJO真的比无状体的会话EJB(SLSB)快吗? 2009-06-30 14:51 mmknown

为什么说spring的开发效率比EJB高呢?EJB3也是基于POJO的,spring的配置文件倒是看着眼花。  回复  更多评论   


只有注册用户登录后才能发表评论。


网站导航:
 

导航

统计

常用链接

留言簿(12)

随笔分类(54)

随笔档案(59)

文章分类(2)

文章档案(1)

相册

搜索

积分与排名

最新评论

阅读排行榜

评论排行榜