Configuración de tiempos de espera de clientes de caché
Las características de Microsoft AppFabric 1.1 para el almacenamiento en caché de Windows Server permiten configurar la longitud de los tiempos de espera de los clientes de caché. Así pues, puede controlar el tiempo durante el que se esperará una respuesta del clúster de caché. En este tema se describen dos tipos de tiempos de espera: de canal abierto y de solicitud.
Algunas aplicaciones consiguen ventajas de rendimiento al definir tiempos de espera breves y administrar adecuadamente los errores de tiempo de espera, mientras que otras prefieren definir tiempos de espera relativamente largos para reducir la frecuencia de los errores.
Los tiempos de espera que se tratan aquí no se aplican a la conexión inicial al clúster de caché. Esta conexión inicial se realiza cuando se crea un objeto DataCacheFactory nuevo. Durante esta conexión, se intenta establecer la comunicación con el clúster, a través de uno o más servidores especificados en la propiedad Servers o el elemento hosts
del archivo de configuración de la aplicación. Cualquier problema en la red o el clúster durante la comunicación con estos servidores puede retrasar el establecimiento de la conexión inicial. Para mitigar este retraso, cree el objeto DataCacheFactory en un subproceso secundario. En función del modelo de programación, la aplicación debe ser capaz de funcionar sin la memoria caché, usando los datos de origen hasta que se restablezca la conexión con el clúster de caché.
ChannelOpenTimeout
Cuando se supera la duración del tiempo de espera de canal abierto, se produce una DataCacheException con el ErrorCode RetryLater. La opción de configuración ChannelOpenTimeout controla el tiempo que espera el cliente de caché para establecer una conexión de red con el servidor. Puede definir este tiempo de espera en 0
si desea devolver los errores al cliente inmediatamente.
Para modificar este valor mediante programación, configure la propiedad ChannelOpenTimeout del objeto DataCacheFactoryConfiguration.
Para controlar este valor mediante un archivo de configuración de aplicación, especifique la duración del tiempo de espera en milisegundos con el atributo channelOpenTimeout
del elemento dataCacheClient
.
RequestTimeout
Cuando se supera la duración del tiempo de espera de solicitud, se produce una DataCacheException con el ErrorCode Timeout. La opción de configuración RequestTimeout controla el tiempo que espera el cliente de caché para recibir una respuesta del servidor a una llamada de API específica. Por ejemplo, si invoca el método Get para recuperar un objeto de la memoria caché, el tiempo de espera de solicitud determina el tiempo que espera el cliente de caché una respuesta antes de devolver una excepción. Al contrario de lo que sucede con ChannelOpenTimeout, no debe definir RequstTimeout en 0, ya que esto provocaría un error de tiempo de espera en cada llamada al servidor.
Para modificar este valor mediante programación, configure la propiedad RequestTimeout del objeto DataCacheFactoryConfiguration.
Para controlar este valor mediante un archivo de configuración de aplicación, especifique la duración del tiempo de espera en milisegundos con el atributo requestTimeout
del elemento dataCacheClient
.
Vea también
Conceptos
Introducción al control de excepciones
Excepciones comunes
2012-03-05