WCF listenBacklog и maxConnections не могут быть установлены выше 10. Почему бы и нет? - PullRequest
10 голосов
/ 20 мая 2010

Мой сервис прекрасно работает при низкой нагрузке. Но при высокой нагрузке я начинаю получать ошибки соединения.

Я знаю о других настройках, но я пытаюсь изменить параметр listenBacklog, в частности, для моей привязки TCP Buffered.

Если я установил listenBacklog = "10", я могу подключиться к порту, где работает моя служба WCF.

Если я изменю значение listenBacklog на значение, превышающее 10, это не позволит мне подключиться к моему сервису во время его работы.

Кажется, что нет никаких ошибок.

Что я могу сделать?
У меня возникает та же проблема, когда я меняю maxConnections с 10. Все остальные свойства привязки я могу установить без проблем.

Вот как выглядит моя привязка:

 <bindings>
  <netTcpBinding>
<binding name="NetTcpBinding_IMyService" closeTimeout="00:01:00"
  openTimeout="00:01:00" receiveTimeout="00:10:00" sendTimeout="00:01:00"
  transactionFlow="false" transferMode="Buffered" transactionProtocol="OleTransactions"
  hostNameComparisonMode="StrongWildcard" listenBacklog="10" maxBufferPoolSize="524288"
  maxBufferSize="1048576" maxConnections="10" maxReceivedMessageSize="1048576">
  <readerQuotas maxDepth="2147483647" maxStringContentLength="2147483647"
    maxArrayLength="2147483647" maxBytesPerRead="2147483647" maxNameTableCharCount="2147483647" />
  <reliableSession ordered="true" inactivityTimeout="00:10:00"
    enabled="false" />
  <security mode="Transport">
    <transport clientCredentialType="Windows" protectionLevel="EncryptAndSign">
    </transport>
    <message clientCredentialType="Windows" />
  </security>
</binding>
...

Мне действительно нужно увеличить значения maxConnections и listenBacklog

Ответы [ 3 ]

6 голосов
/ 26 мая 2010

Если вы работаете на компьютере с Win2000, XP, Vista или Win7, то ОС ограничивает вас 10 одновременными TCP-соединениями. Попробуйте запустить на компьютере с Windows Server для подтверждения.

0 голосов
/ 03 июля 2013

Попробуйте удалить все ссылки на HTTP-привязки и MEX.

0 голосов
/ 23 мая 2010

Это почти наверняка проблема удушения. Попробуйте указать значения не по умолчанию для значений поведения регулирования службы. См. Эту страницу для некоторых указаний .

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