道歉,如果我错过了一些明显的东西,但已经浏览了文档,论坛并用Google搜索了几个小时,我就找不到对以下问题的明确答案:
WebApplicationContext.GetObject()方法如何处理并发请求?请求是串行化还是并行执行的?是否有任何性能数据可用于演示它在负载下的行为?
先谢谢你的帮助,
安德鲁
答案 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, 标记“