Проблемы тайм-аута со службами IIS / WCF - PullRequest
1 голос
/ 02 января 2012

У меня возникли проблемы с тайм-аутом в моих службах WCF.

Я проводил нагрузочное тестирование своего веб-приложения (silverlight).Тестовый сценарий включает в себя несколько вызовов службы WCF (службы размещаются локально в IIS).Я делаю пошаговое нагрузочное тестирование, где я начинаю с одного пользователя и добавляю нового пользователя каждую минуту.Он работает нормально до тех пор, пока примерно 20 минут не начнется сбой - ошибки тайм-аута начнут поступать. Результаты теста выглядят так:% времени процессора, примерно через 20 минут он падает.График внизу слева показывает время, необходимое для завершения каждого теста, и примерно 300 с, когда тесты начинают проваливаться.Красная линия в левом верхнем углу показывает количество пользователей.

Через 20 минут кажется, что IIS прекращает обрабатывать любые запросы (объясняет, почему% времени процессора падает).После запуска теста мне необходимо перезапустить узел веб-сервера в IIS, чтобы IIS снова обрабатывал входящие запросы.

Я попытался максимизировать настройки газа в IIS и настроил тайм-ауты открытия / закрытия / отправки / получения веб-служб на 60 минут.Это не влияет на результаты.Кто-нибудь знает, что может быть причиной этих тайм-аутов?

1 Ответ

1 голос
/ 09 января 2012

Невозможно категорически заявить, в чем заключается проблема этой статистики. Сколько запросов в секунду вы получаете?

Попробуйте запустить тест на 10 пользователей и увеличьте его на 2 виртуальных пользователя в минуту и ​​посмотрите, остановится ли тест на 20 виртуальных пользователях. Если это так, это будет указывать на ресурсы, которыми занимаются ваши виртуальные пользователи.

Однако, учитывая, что ЦП по существу максимально загружен у четырех виртуальных пользователей, может показаться, что запуск теста на хост-машине веб-службы не идеален.

Я бы не ожидал, что 20 виртуальных пользователей максимально используют какие-либо ресурсы, но 20 виртуальных пользователей должно быть достаточно, чтобы выровнять вашу машину разработчика, когда она размещает веб-службы и выполняет нагрузочный тест.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...