MaxBufferPoolSize和MaxBufferSize?

时间:2013-03-11 13:19:48

标签: azure

这是我在Stack Overflow上的第一篇文章,所以如果有任何不符合项,请道歉。

问题

我开发了一个基于Windows Azure的站点(类似于eBay)并在Azure平台上托管它。我已经部署了多个Web角色实例,并启用了Azure缓存。直到上周一切都很顺利,但突然产品搜索页面从db加载数据时开始冻结。它仅针对返回大量数据的特定类别挂起。

我读到某个地方,如果我们期待大的消息,我们应该启用localCache和transportProperties。因此,我在web.config中修改了datacache项,如下所示,但没有运气。该页面仍然挂起了这些类别!

有人可以告诉我下面的内容有什么问题并向我展示一些指示吗?

  

<dataCacheClient name="default" channelOpenTimeout="20000" maxConnectionsToServer="4" requestTimeout="30000">
  <localCache isEnabled="true" sync="TimeoutBased" ttlValue="300" objectCount="10000"/>
  <clientNotification pollInterval="300" maxQueueLength="10000"/>
  <transportProperties connectionBufferSize="64000" maxBufferPoolSize="5242880"
                       maxBufferSize="1242880" maxOutputDelay="2" channelInitializationTimeout="60000"
                       receiveTimeout="600000"/>
  <hosts>
    <host name="<<AZURE CACHE URL>>" cachePort="22233" />
  </hosts>

  <securityProperties mode="Message">
    <messageSecurity
      authorizationInfo="<<KEY>>">
    </messageSecurity>
  </securityProperties>
</dataCacheClient>

<dataCacheClient name="SslEndpoint" channelOpenTimeout="20000" maxConnectionsToServer="4" requestTimeout="30000">
  <localCache isEnabled="true" sync="TimeoutBased" ttlValue="300" objectCount="10000"/>
  <clientNotification pollInterval="300" maxQueueLength="10000"/>
  <transportProperties connectionBufferSize="64000" maxBufferPoolSize="15242880"
                       maxBufferSize="5242880" maxOutputDelay="2" channelInitializationTimeout="60000"
                       receiveTimeout="600000"/>
  <hosts>
    <host name="<<AZURE CACHE URL>>" cachePort="22243" />
  </hosts>

  <securityProperties mode="Message" sslEnabled="true">
    <messageSecurity
      authorizationInfo="<<KEY>>">
    </messageSecurity>
  </securityProperties>
</dataCacheClient>
     

我的开发环境 Azure SDK 1.8(10月12日),SQL Server 2008 R2,ASP.Net MVC 3

更新

今天我部署了一个关闭CustomerErrors的构建,看它是否会抛出任何异常,这就是我得到的。 enter image description here

提前致谢

ND

1 个答案:

答案 0 :(得分:0)

我建议首先找出哪个组件真正导致间歇性减速。是缓存还是SQL Azure?

如果它确实是缓存,并且因为您正在使用Azure共享缓存(以前称为Azure AppFabric缓存)

我建议将专用缓存视为解决方案而不是共享缓存。共享缓存的性能有时是......不可预测的,因为它是一个多租户服务,数据通过网络传播。