Spring.Net WebApplicationContext.GetObject如何处理并发请求?

时间:2010-03-25 14:22:46

标签: concurrency spring.net

道歉,如果我错过了一些明显的东西,但已经浏览了文档,论坛并用Google搜索了几个小时,我就找不到对以下问题的明确答案:

WebApplicationContext.GetObject()方法如何处理并发请求?请求是串行化还是并行执行的?是否有任何性能数据可用于演示它在负载下的行为?

先谢谢你的帮助,

安德鲁

1 个答案:

答案 0 :(得分:0)

我收到了Mark Pollack在Spring.Net论坛上的回复,该回复给出了一个非常明确的答案(Mark是Spring.Net项目的Co Lead):

“嗨,

在检索/创建单例对象和非单例对象(原型)之间存在锁定,在调用线程中有效地“新建”。我已经恢复了围绕这个领域的一些测试,ConcurrentObjectFactoryTests,它有一个配置文件很长时间但没有测试impl使用它,以及DefaultListableObjectFactoryPerfTests。

在Spring和Guice之间的Java世界中,当我注意到这一点时,我做了一些微基准标记。 (可爱的名字叫“Semi Useless Benchmark”)。

http://www.javalobby.org/articles/gu...ource=archives

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

基准测试中的“.NET移植”类位于DefaultListableObjectFactoryPerfTests中。我没有Spring.NET的任何性能数据。社区已经报告了过去(很久以前)并发问题,这些问题已得到修复,我不知道该领域的任何具体问题。

HTH, 标记“