Что ограничивает WCF ServiceModelService.Instances?

Я пытаюсь загрузить тестовую службу WCF с помощью (IIS6 / Server2003 / BasicHttpBinding). Служба регулируется следующим образом:

<serviceThrottling maxConcurrentCalls="100" maxConcurrentSessions="100" maxConcurrentInstances="100"/>

Чтобы оценить количество обращений к серверу, я использую счетчики производительности ServiceModelService 3.0.0.0. Если я уменьшу maxConcurrentCalls до 20, 15, 10 или чего-нибудь ниже, счетчик производительности Instances покажет, что WCF соблюдает регулирование. Однако, если я изменю maxConcurrentCalls на 30, я никогда не смогу добиться, чтобы количество экземпляров превысило 24. Кроме того, количество невыполненных вызовов никогда не превышает 24. Что еще может ограничивать WCF?


person James Cadd    schedule 27.03.2009    source источник
comment
какую привязку вы используете? ваша служба singleton, за сеанс, за звонок?   -  person Mike_G    schedule 27.03.2009
comment
не говоря уже о привязке, я ее пропустил.   -  person Mike_G    schedule 27.03.2009


Ответы (1)


См. Почему только два одновременных запроса для нагрузочного тестирования WCF?

Когда я посмотрел на этот вопрос, мой первый ответ таков: клиент на самом деле не отправил достаточно запросов на сервер. Это почему? Вот причины:

1) Если вы используете синхронный WCF HttpModule / HttpHandler (установленный по умолчанию), вы получите максимальное количество одновременных запросов (удерживаемых этим количеством рабочих потоков ASP.NET) как 12 * [Количество ЦП для сервера].

2) Регулирование WCF указано выше.

person Eugene Yokota    schedule 28.03.2009