ASP.NET Core Beneficios y descripción general del almacenamiento en caché
Note
Esta característica solo funcionará con .NET Core aplicaciones dirigidas a .NET Framework .
Con Microsoft reestructurando ASP.NET 5 a ASP.NET Core, NCache ha introducido la gestión del estado de sesión para ASP.NET Core para proporcionar soporte con la nueva arquitectura. NCache proporciona opciones flexibles para combinar sesiones con NCacheCapacidades de almacenamiento en caché mejoradas para aumentar el rendimiento en su conjunto. Ahora puede almacenar el ASP predeterminado.NET Core Sesiones dentro NCache vea la sección NCacheServicios de gestión del estado de sesión a través de métodos de extensión en el ASP..NET Core módulos para crear y almacenar sesiones configuradas de forma personalizada que utilizan NCache.
NCache Propiedades de la sesión
Bloqueo de sesión exclusivo: NCache La gestión de sesiones mejora ASP.NET Core Sesiones al proporcionar bloqueo de sesión exclusivo para evitar interbloqueos y comprometer la integridad de los datos. El bloqueo es configurable y por defecto está deshabilitado.
Reintento de liberación de bloqueo: Si se utiliza un bloqueo exclusivo, también se configuran los reintentos de bloqueo. En caso de solicitudes simultáneas, se intenta desbloquear la cerradura un número configurado de veces.
Afinidad de ubicación: NCacheLos servicios de administración de sesiones de proporcionan afinidad de ubicación que administra ASP.NET Core Sesiones en múltiples granjas web que están separadas geográficamente. Para Location Affinity, se deben especificar una caché "primaria" y una o más "secundarias" para cada granja de servidores web. La caché primaria se utilizará para todo el tráfico local, en la región local y las cachés secundarias son de regiones geográficas distantes. Estos están configurados en web.config.
Topologías de clúster: Para sesiones, diferentes topologías de agrupamiento ofrecidas por NCache puede ser usado. La topología replicada ofrece equilibrio de carga de los clientes para que el ASP.NET Core La aplicación no sufre durante el tráfico intensivo. Si Réplica de partición Se utiliza caché, proporciona mayor escalabilidad y confiabilidad a la aplicación y realiza transacciones más rápidas.
Fiabilidad: De forma predeterminada, una sesión se almacena en la memoria de un proceso ASP.NET. Si el proceso se recicla o un servidor de aplicaciones deja de funcionar, los datos de la sesión se pierden. Con NCache, los datos de la sesión se almacenan fuera del proceso ASP.NET, en un clúster de caché. Se puede elegir cualquier topología de caché para satisfacer las necesidades de confiabilidad. Por lo tanto, en caso de que el servidor de aplicaciones no esté disponible, los datos de la sesión permanecen disponibles cuando el proceso ASP.NET se recicla o el servidor de aplicaciones vuelve a estar activo.
Escalabilidad: NCache La sesión utiliza una caché en memoria como almacenamiento, mientras que una caché en clúster proporciona una escalabilidad aún mejor. Trabajar en un entorno de clúster permite agregar más servidores al clúster de sesión en tiempo de ejecución; esto da como resultado una mayor escalabilidad y confiabilidad para la aplicación. Por lo tanto, la agrupación de sesiones ASP.NET para granjas web es más rápida y escalable que almacenarlas en una base de datos.
Disponibilidad, equilibrio de carga y tolerancia a fallos: En un entorno de granja web, utilizando NCache con ASP.NET Core Sessions proporciona una mejor tolerancia a fallos, manteniendo los datos de la sesión disponibles en todos los nodos del servidor en una caché agrupada. Esto también da como resultado el manejo de una carga mayor porque las sesiones se pueden distribuir a varios servidores de la granja.
Búsqueda de sesión en caché simplificada: Todos los datos de la sesión en caché se pueden recuperar en una sola llamada a través de HttpContext.Session
en ASP.NET Core.
Mejor interpretación: Los datos de la sesión que se almacenan en una memoria caché, más cercana a la aplicación ASP.NET, producen el máximo rendimiento.
ASP.NET Core Componentes
ASP.NET Core trabaja en la inyección de dependencia, para permitir un acoplamiento flexible y más flexibilidad. El servidor se crea dentro de la aplicación y utiliza la clase de inicio que contiene definiciones y configuraciones de manejo de solicitudes especificadas por el usuario para los servicios. Para obtener más detalles sobre la clase de inicio y sus componentes, consulte la ASP.NET Core Documentación.
NCache proporciona ASP.NET Core soporte de dos maneras: puede usar NCache ASP.NET Core Proveedor de sesión en lugar de ASP.NET Core Sesiones o uso ASP.NET Core Sesiones con NCache IDistributed
Proveedor.
En esta sección
ASP.NET Core Estrategias de almacenamiento de sesiones
Explica cómo se pueden almacenar sesiones utilizando ASP..NET Core y NCachefunciones mejoradas de .
ASP de múltiples regiones.NET Core Proveedor de sesión para NCache
Explica cómo la función Location Affinity en NCache se puede configurar para granjas web utilizando cachés agrupados distribuidos en varias regiones.
Uso compartido de sesiones entre ASP.NET Core y ASP.NET
Explica cómo ASP.NET Core Las sesiones se pueden compartir y actualizar con ASP.NET Sessions y viceversa.
ASP.NET Core SignalR Backplane
Explica cómo configurar y utilizar SignalR usando NCache en ASP.NET Core aplicaciones.
ASP.NET Core Almacenamiento en caché de respuestas
Explica cómo usar el almacenamiento en caché de respuestas usando NCache.
ASP.NET Core Almacenamiento en caché de objetos
Explica cómo ASP.NET Core Los objetos se pueden almacenar usando NCache.
ASP.NET Core Proveedor de protección de datos
Explica cómo ASP.NET Core El proveedor de protección de datos trabaja con NCache.