Spring 2.5 Perfomance Improvements 200% 直逼 Guice

上一篇 / 下一篇  2008-03-26 02:48:14 / 个人分类:Guice

  并发性能提升的原因之一是使用了 ConcurrentHashMap,原来的 Collections.synchronized(new HashMap()) 存在同步锁的性能瓶颈;

  如果你是用JDK 5.0或以上的版本,就可以直接得到这个性能的提升的好处了。

  或者下载 Emory concurrent utilities backport 加到 CLASSPATH 中

  http://dcl.mathcs.emory.edu/util/backport-util-concurrent/

  当然还要努力,越快越好啦。。。

  引用

  The upcoming Spring Framework version 2.5 will bring a 200% improvement for concurrent access over Spring 2.0.*. I used Crazy Bob's Semi Useless Benchmark ™ as a starting point. I fiddled with the code slightly to change the default behavior. from "prototype" to "singleton", and I saw that spring 2.5 was faster than Guice for singletons.

  Here are some benchmarks (there is variability based on the runs)

  * Spring 2.0 vs. guice 1.0:

  o Prototype: Single thread: Spring is 50-150X slower. Concurrent: Spring is 50-150X slower.

  o Singleton: Single thread: Spring 3X slower - 2X faster. Concurrent: Spring is 5-10X slower

  * Spring 2.0.6 vs. guice 1.0:

  o Prototype: Single thread: Spring is ~10X slower. Concurrent: Spring is 5X slower.

  o Singleton: Single thread: Spring 2X slower - 2X faster. Concurrent: Spring:Guice ~2:3

  * Spring 2.14m vs. guice 1.0:

  o Prototype: Single thread: Spring is 5-7X slower. Concurrent: Spring is 3-4X slower.

  o Singleton: Single thread: neck and neck. Concurrent: Spring is 1-1.5X faster

  * guice 1.0:

  o Prototype: Single thread vs. Concurrent: Concurrent might be a bit slower than single threaded

  o Singleton: Single thread vs. Concurrent: Concurrent is quite a bit faster than single threaded

  详细请见这里

  http://www.jroller.com/Solomon/entry/spring_2_5_perfomance_improvements


TAG:

 

评分:0

我来说两句

显示全部

:loveliness: :handshake :victory: :funk: :time: :kiss: :call: :hug: :lol :'( :Q :L ;P :$ :P :o :@ :D :( :)

日历

« 2009-07-05  
   1234
567891011
12131415161718
19202122232425
262728293031 

数据统计

  • 访问量: 45405
  • 日志数: 171
  • 影音数: 3
  • 建立时间: 2008-02-28
  • 更新时间: 2008-05-19

RSS订阅

Open Toolbar