Проблема с освобождением соединений NET TCP - PullRequest
2 голосов
/ 11 февраля 2011

У меня есть приложение, которое использует WCF и сетевой веб-сервис на основе tcp, которое работает на Windows 2008 R2 и .Net 4. При большой нагрузке мы видим, что количество tcp-соединений возрастает до 500, но никогда больше, предположить, что где-то настроен лимит, который нам еще предстоит отследить. После того, как наше приложение было подвергнуто этому стресс-тесту, число TCP-соединений постепенно падает, и мы находимся в процессе расследования этого с помощью акулы проводов. Тем не менее, мне было интересно, если кто-то еще испытал и, в частности, может ли кто-нибудь предложить какие-либо проблемы / советы / предложения по поводу: -

  1. Почему мы достигли этого лимита в 500 соединений.

  2. Почему соединения кажутся в очереди и не освобождаются раньше.

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

1 Ответ

2 голосов
/ 11 февраля 2011

Предел подключения установлен здесь , в старые времена проблема была в том, что по умолчанию было 2 или 10 в зависимости от ситуации, но, возможно, оно изменилось на 500.

Если соединения остаются открытыми, они будут оставаться открытыми, пока клиент не закроет их или не истечет время ожидания. Также проверьте, используете ли вы за сеанс http://msdn.microsoft.com/en-us/magazine/cc163590.aspx

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