WCF之maxConnections

<bindings>
<netTcpBinding>
<binding name="TcpBinding" 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="65536" maxConnections="10"
maxReceivedMessageSize="65536">
<readerQuotas maxDepth="32" maxStringContentLength="8192" maxArrayLength="16384" maxBytesPerRead="4096" maxNameTableCharCount="16384" />
<reliableSession ordered="true" inactivityTimeout="00:10:00" enabled="false" />
<security mode="Transport">
<transport clientCredentialType="Windows" protectionLevel="EncryptAndSign" />
<message clientCredentialType="Windows" />
</security>
</binding>
</netTcpBinding>
</bindings>

  ================================================================

当maxConnections > 10时,服务会抛出异常EndpointNotFoundException。

解决方法:修改mexTcpBinding的端口,不要与baseAddress的端口一样。比如:

<service name="WcfServiceLibrary1.Service1" behaviorConfiguration="WcfBehavior">
<endpoint address="" binding="netTcpBinding" bindingConfiguration="netTcpBindingConfig" contract="WcfServiceLibrary1.IService1" />
<endpoint address="net.tcp://localhost:7733/Service1/mex" binding="mexTcpBinding" name="MEX" contract="IMetadataExchange" />
<host>
<baseAddresses>
<add baseAddress="net.tcp://localhost:8733/Service1" />
</baseAddresses>
</host>
</service>

  

上一篇:【Qt开发】设置Qt应用程序图标


下一篇:RabbitMQ配置