回答済み Possible Send/Receive Timeout Error

  • 2010年7月9日 5:23
     
     

    I think I may have found a bug in a send/receive timeout that is getting setup in the WCF Transport Channel. The internal class Microsoft.ApplicationServer.Caching.WcfTransportChannel. In method SetupTimeouts, the SendReceiveTimeout is getting set to two times the send timeout value.  I think it should be set to the send timeout + receive timeout.

    See http://philbolduc.blogspot.com/2010/07/appfabric-caching-send-receive-timeout.html for a screen shot.

すべての返信

  • 2010年7月13日 6:58
     
     回答済み
    Hi Phil, these are product internals and not exposed outside. However, I can tell you that this is not a defect.
    Amit. (Velocity Dev, MSFT)
  • 2010年9月27日 15:03
     
     

    They may be product internals, but as end users, we are able to configure the receiveTimeout by configuration via the transport properties

    http://msdn.microsoft.com/en-us/library/ee790816.aspx

    <dataCacheClient requestTimeout="15000" channelOpenTimeout="3000" maxConnectionsToServer="1">
          <localCache isEnabled="true" sync="TimeoutBased" ttlValue="300" objectCount="10000"/>
          <clientNotification pollInterval="300" maxQueueLength="10000"/>
          <hosts>
             <host name="CacheServer1" cachePort="22233"/>
             <host name="CacheServer2" cachePort="22233"/>
          </hosts>
          <securityProperties mode="Transport" protectionLevel="EncryptAndSign" />
          <transportProperties connectionBufferSize="131072" maxBufferPoolSize="268435456"
                               maxBufferSize="8388608" maxOutputDelay="2" channelInitializationTimeout="60000"
                               receiveTimeout="600000"/>
       </dataCacheClient>

    I'll trust you it is not a bug or issue, but it still feels like something is not correct. I made an update to my blog post indicating you said it was not a defect.

  • 2010年9月27日 15:59
     
     
    Thanks for updating your blog post. The receive property you are mentioning is actually the receive timeout on a channel. It is not related to sendReceiveTimeout.
    Amit. (Velocity Dev, MSFT)
  • 2011年2月9日 23:38
     
     

    Can someone tell me what is the receiveTimeout property ? When will it get triggered ?

    Will it ever get triggered if my ChannelOpenTimeout is less then 600000 ?

    Thank you

  • 2011年2月11日 17:29
    モデレータ
     
     回答済み

    The receiveTimout property is the timeout to wait before the channel is marked idle and is brought down in case there is no message exchanged within that period. this is applicable only after the channel has been opened.

    ChannelOpentimeout is the time to wait for opening a channel to the server.

  • 2011年2月14日 16:01
     
     
    Thank you Ankur!
    Mohammad Faridi.
  • 2012年3月30日 20:18
     
     

    Once the channel hits receiveTimeout then why does another channel opens up. I have set  receiveTimeout="600000" channel with max connections to be 2 after first timeout I receive a duplex channel error and it opens 2 new channels, next duplex channel occurs in 5 mints

    1. Why second channel took 5 mints I would expect it to be 10.

    2. Since the client is configured through XML, how I can avoid the duplex channel errors ?