2009-02-26 3 views
1

У меня есть веб-приложение, которое разговаривает с сервисом WCF, размещенным в службе Windows. Время от времени я начинаю видеть ошибки EventLog, указывающие, что запрос к службе WCF истекает через 1 минуту. Я понимаю эту ошибку (хотя почему так долго реагировать - это тайна). Ошибка, которая действительно смущает меня это одна:Strange TimeoutException в WCF

Open таймаут после 00:00:00 при установлении транспортного сеанса для net.pipe: // локальный/сервис

Я зову Закрыть() на всех моих клиентских прокси, так что я на 99% уверен, что нет открытых открытых подключений. Поэтому моя единственная мысль заключается в том, что у меня могут быть проблемы с соединениями, так как для MaxConnections для службы WCF установлено значение 3000, и для каждого веб-приложения установлено значение 1000. Моя реакция на то, что все соединения израсходованы, и они выходят из строя во время постановки в очередь. Однако я не могу доказать это (что я знаю).

Эти вызовы должны принимать в абсолютном макс, секундах или двух (среднее значение - несколько сотен миллисекунд).

  1. Может ли кто-нибудь дать мне указатель на то, что может быть вызвано ошибкой выше?
  2. Есть ли способ для службы WCF обслуживать неограниченное количество соединений?

    2a. Если нет, то каковы последствия установки максимальных соединений на что-то вроде 10 000?

+0

Вы нашли причину этой проблемы? Я испытываю такие же проблемы – pdiddy

ответ

2
  1. попытка включить ведение журнала WCF и посмотреть, если вы можете найти что-то более полезным там.
  2. Нет, нет. 2a. Вероятно, вы получите исключения, поскольку будете использовать все ресурсы (фиктивные соединения, потоки обработчиков, память). Я также уверен, что в самой ОС есть предел и что его значительно ниже 10000
Смежные вопросы