Служба WCF зависает - PullRequest
       4

Служба WCF зависает

0 голосов
/ 23 декабря 2009

У меня есть 2 службы wcf, 1 из которых опрашивает другую службу через регулярные промежутки времени. Служба2 размещена в №. машин с одинаковой конфигурацией.

Моя проблема заключается в том, что всякий раз, когда служба poller перезапускается, хотя service2 на других машинах работает нормально, я не получаю ответ от этих служб (в основном это происходит по тайм-ауту - получение SYSTEM.TimeOutException). Если я пытаюсь получить доступ к той же службе (service2) из ​​какого-либо временного приложения (без перезапуска service2), он дает ответ. Если я перезапускаю сервис 2, то он работает нормально, сервис 1 (сервис опроса) получает ответы от всех размещенных сервисов (Сервис 2).

Не знаю, в чем причина проблемы.

С уважением, Чираг

Ответы [ 2 ]

0 голосов
/ 25 декабря 2009

Если вы используете сессионное связывание (netTcpBinding, wsHttpBinding), более чем вероятно, что вы явно не закрываете свой клиентский канал, когда закончите с ним. Это может вызвать поведение, которое вы видите, потому что сеанс занимает около минуты или около того времени, если вы явно не закрываете его, а максимальное число сеансов по умолчанию низкое (10) - сервер будет позволять новым сеансам складываться до старые близки. Вы также можете настроить ограничение службы на привязке на стороне сервера, чтобы увеличить максимальное количество разрешенных открытых сеансов, но вы действительно должны сначала убедиться, что ваши клиенты очищаются должным образом.

0 голосов
/ 23 декабря 2009

Присоедините VS к вашему wcf сервису, который зависает. И выясните, успешно ли ваше соединение.

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

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