I have a WCF client to send a request to a service. And my business code calls the client API to send over 300 requests per second. But my client sends only about 50 for service according to the performance counters of my service and WCF ServicePoint.
And I increased ServicePointManager.DefaultConnectionLimit to 1000 in code and set maxConCurrentCalls to 1000 in the service configuration file, but improved a bit.
I think there may be a queue in the WCF client for send requests. Is there any way to configure it and speed up my client.
Here is my configuration for the client:
<basicHttpBinding>
<binding name="Binding" closeTimeout="00:01:00" openTimeout="00:01:00"
receiveTimeout="00:10:00" sendTimeout="00:01:00" allowCookies="false"
bypassProxyOnLocal="false" hostNameComparisonMode="StrongWildcard"
maxBufferSize="2000000" maxBufferPoolSize="524288" maxReceivedMessageSize="2000000"
messageEncoding="Text" textEncoding="utf-8" transferMode="Buffered"
useDefaultWebProxy="false">
<readerQuotas maxDepth="32" maxStringContentLength="8192" maxArrayLength="16384"
maxBytesPerRead="4096" maxNameTableCharCount="16384" />
<security mode="None">
<transport clientCredentialType="None" proxyCredentialType="None"
realm="" />
<message clientCredentialType="UserName" algorithmSuite="Default" />
</security>
</binding>
</basicHttpBinding>
source
share