Compartir a través de


Estado de las aplicaciones

Guardar el estado de las aplicaciones y la forma en que éste se almacena es uno de las decisiones habituales que es necesario tomar a la hora de definir la arquitectura de la aplicación.

En escenario de escalabilidad existiría múltiples instancias por cada rol desplegado, lo que implica tener que valorar cómo se va a guardar esta información, dónde se almacenará y cómo se pude conseguir que se comparta entre las diferentes instancias o roles.

Una de las alternativas es almacenar la información de forma centraliza empleando las tablas de Windows Azure Storage.

Para poder disponer de esta funcionalidad dentro las aplicaciones es necesario realizar modificaciones en el fichero de configuración, modificando la configuración para emplear un proveedor personalizado que permita guardar la información de la sesión en storage.

<system.web>
<sessionState mode="Custom" customProvider=
"TableStorageSessionStateProvider">
<providers> <clear/>
<add name= "TableStorageSessionStateProvider"
type="Microsoft.Samples.ServiceHosting. AspProviders.
TableStorageSessionStateProvider" applicationName="myWebAppName"/>
</providers>
</sessionState>

En el training kit de Windows Azure se encuentra disponible el código fuente para el proveedor que posibilita guardar la información de la sesión en el storage.

Es importante tener en cuenta que usar el storage con este fin implica un coste adicional para la aplicación, por lo que no sólo en términos de rendimiento sino también en términos de costes es importante reducir al máximo la información a almacenar en la sesión.