我开发了一个 RESTfulWCF
服务 ( WebHttpBinding
),它是一个 AppFabric 缓存客户端。我使用 jMeter 进行了性能测试。测试计划包含服务中的一项操作,将在 100 个并发线程中调用。
但是,我注意到在运行测试后,the first 20 to 30 threads are taking considerable amount of time to get the response (say 10-15 seconds)
所有其他剩余线程将在 AppFabric Cache 相关代码打开的情况下在 2-3 秒内完成它们的执行。每当我评论 AppFabric 相关代码时,它都可以正常工作。请注意,我只使用Get,不使用Put。
我的服务具有以下配置作为 t AppFabric:
<dataCacheClient requestTimeout="60000" channelOpenTimeout="15000" maxConnectionsToServer="2">
<localCache isEnabled="true" sync="NotificationBased" ttlValue="300000" objectCount="100000" />
<clientNotification pollInterval="10" maxQueueLength="100000" />
<hosts>
<host name="**********" cachePort="*******" />
</hosts>
<securityProperties mode="Transport" protectionLevel="EncryptAndSign" />
<transportProperties connectionBufferSize="131072" maxBufferPoolSize="268435456" maxBufferSize="8388608" maxOutputDelay="2" channelInitializationTimeout="60000" receiveTimeout="600000" />
</dataCacheClient>
有人可以就导致这种初始延迟的原因给出一些指示吗?