Spring.Net, как WebApplicationContext.GetObject обрабатывает параллельные запросы? - PullRequest
0 голосов
/ 25 марта 2010

Извиняюсь, если я упустил что-то очевидное здесь, но, просмотрев документацию, форумы и погуглив несколько часов, я просто не могу найти однозначного ответа на следующие вопросы:

Как метод WebApplicationContext.GetObject () обрабатывает параллельные запросы? Сериализуются ли запросы или выполняются параллельно? Имеются ли данные о производительности, чтобы продемонстрировать, как он ведет себя под нагрузкой?

Заранее спасибо за помощь,

Andrew

1 Ответ

0 голосов
/ 26 марта 2010

Я получил ответ от Марка Поллака на форуме Spring.Net, который дает довольно определенный ответ (Марк является со-лидером в проекте Spring.Net):

"Привет,

Существует блокировка извлечения / создания одноэлементных объектов, а не одноэлементные объекты, прототипы, эффективно «обновляются» в вызывающем потоке. Я восстановил некоторые тесты в этой области, ConcurrentObjectFactoryTests, который имел конфигурационный файл целую вечность, но не использовался для тестирования, а также в DefaultListableObjectFactoryPerfTests.

Были некоторые микробенчмарки, которые я сделал некоторое время назад, когда в мире Java было внимание между Spring и Guice. (Прекрасно названный "Полу Бесполезный Тест").

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

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

Классы .NET ported из эталонного теста находятся внутри DefaultListableObjectFactoryPerfTests. У меня нет данных о производительности для Spring.NET. Сообщество сообщало о проблемах с параллелизмом в прошлом (довольно давно), которые были устранены, и я не знаю каких-либо конкретных проблем в этой области.

НТН, Mark "

...