|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
22.08.2011, 19:04 | #1 |
Новичок
Джуниор
Регистрация: 22.08.2011
Сообщений: 2
|
засыпающий вебсервис
здравствуйте. Есть небольшой проект на аспе, в нем вебсервис, позволяющий отослать сообщение всем браузерным клиентам сидящим на определенной странице (через вечно грузящийся IFrame).Отсылаются месаги ботами, часто много и с удовольствием. Нужно еще как то получать ответ от клиентов ботам. Ну в принципе фигня, делаем класс с очередью сообщений и именем бота, по имени в словарике ищем кому ответили и кладем в очередь. Бот стучится в вебсервис, если чтото есть ему это дело отдают, если нет - ждет события NewMessageAdded. И вот тут наинчается ересь: вебсервис засыпает при больших количествах ботов, то есть большое количество долгих запросов.
Грешил на многопоточность - но не нашел где и на чем висим... в процессе выяснилось: висим мы на сервисе, asmx перестал реагировать на запросы. Висит 10 (по количеству ботов) потоков, на событии ожидания нового ответа... Пытаюсь вызвать к-л. метод вебсервиса итишина, бряк стоящий в методе не загорается. Если события нового сообщения ждать не вечно а например 5 секунд - то раз в пять секунд начинают проходить запросы. Создается такое ощущение что тупо забит ThreadPool и IIS ждет свободного потока для обработки запроса к сервису... прав или нет - незнаю потому что не нашел где это дело правится, но по идее там потоков 200 минимум... Вот как то так, вобщем подскажите кто что может) мы люди не местныя)) |
26.08.2011, 17:33 | #2 |
Новичок
Джуниор
Регистрация: 22.08.2011
Сообщений: 2
|
IIS не серверных версий винды ограничен 10 подключениями, соответсвенно 10 ботов сжирали этот лимит.
|