Режим параллелизма WCF как несколько не работает в IIS 6.0 - PullRequest
0 голосов
/ 03 февраля 2012

Я новичок в программировании WCF в .net.Недавно я работал над одним из проектов WCF, который отвечает клиенту байтами файла изображения.Все работало нормально, но производительность.Хотя служба построена с параллельным режимом параллелизма, все запросы помещаются в очередь.Таким образом, если в очереди 5 запросов, последний запрос должен ждать 5X (15 секунд вместо 3 секунд).Блог MSDN: http://social.msdn.microsoft.com/Forums/en/wcf/thread/861ea6f7-6c4e-4c3f-abde-ae60228244ea объясняет похожую проблему.Но решение не помогло мне.Я хотел бы заранее поблагодарить вас всех за любые предложения / помощь.

1 Ответ

0 голосов
/ 03 февраля 2012

Во-первых, если это вообще возможно, я рекомендую использовать IIS7 на Server 2008+, если это вообще возможно. Его возможности намного превышают IIS6 '. Если вы не можете использовать IIS7 ...

Убедитесь, что вы настроили свой веб-сайт, на котором размещены ваши службы WCF, как веб-сад . Это позволяет нескольким рабочим процессам обрабатывать входящие запросы. Это слишком частые ситуации, когда пул потоков ASP.NET насыщается / блокируется, в результате чего запросы помещаются в очередь, в то время как отдельный рабочий процесс обрабатывает каждый запрос последовательно.

Во-вторых, в статье, на которую вы указываете состояния, обязательно увеличьте количество одновременных потоков, которые ASP.NET настроил для обработки.

Обратите внимание: если ваш код обращается к коду, который сериализует работу для одного блокирующего потока (например, COM-объекты, написанные на VB6, которые выполняют ЛЮБЫЕ манипуляции со строками), то не имеет значения, сколько рабочих потоков вы настроите - они все должны быть сериализованы в один поток (поскольку строковые процедуры VB6 являются однопоточными)! Вот почему так важна конфигурация веб-сада и нескольких рабочих процессов.

НТН.

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