Descripción general del almacenamiento en caché de datos y claves de caché
NCache utiliza una estructura clave-valor mejorada para almacenar objetos y almacenamiento en caché de datos. Entonces, mientras que los almacenes clave-valor convencionales contienen una clave de cadena frente a un valor de cadena, NCache permite tipos de datos primitivos, objetos personalizados, NCache-objetos específicos (CacheItems), estructuras de datos y JSON como valores de cada clave. Por lo tanto, cada elemento agregado al caché debe tener una clave de cadena única.
Note
Esta característica también está disponible en NCache Professional.
Claves de caché en el almacenamiento en caché de datos
Esta estructura clave-valor es ventajosa para recuperar objetos del caché. Tiempo NCache Admite múltiples métodos de recuperación de datos de caché, como consultas y etiquetado, las claves obtienen de manera eficiente los elementos asociados sin ejecutar consultas en todo el caché.
Claves en NCache tienen las siguientes propiedades:
- Único: no se permiten llaves duplicadas
- Solo basado en cadenas
- Cadena válida: no se permiten cadenas nulas/vacías
- Distingue mayúsculas y minúsculas
Consejo
Buenas prácticas para nombrar claves:
- Proporcione nombres significativos a sus claves que describan los datos asociados. Por ejemplo, es probable que olvide a qué está asociada "clave1" en comparación con una clave denominada Producto: 1001. Este nombre de clave se describe a sí mismo como un elemento de Producto con ID del Producto 1001.
- Para varias clases, puede agregar un prefijo antes del nombre de la clave para marcar la clave de la clase. Por ejemplo, sus datos son tales que Producto y Local los objetos pueden tener "1001" como clave. Estos pueden estar en el formato [Nombre de la clase]_[Nombre de la clave] para que sean Producto_1001 y Cliente_1001 para aclaraciones
- Para nombres clave con varias palabras, puede usar cualquier carácter para que sea legible, siendo algunos de los más comunes
_ , & : - =
. Por ejemplo, Producto_Artículo:1001.
Afinidad de ubicación entre elementos
NCache proporciona un mecanismo para almacenar datos en el caché que crea una afinidad entre elementos de diferentes clases. Puede almacenar elementos de diferentes tipos en el mismo nodo para ahorrar el costo correspondiente mientras recupera elementos con claves similares. Este mecanismo asigna entradas similares en el back-end, lo que acelera aún más el almacenamiento en caché y la recuperación de datos.
La afinidad de ubicación se puede habilitar manualmente al ingresar datos en el caché. La clave del artículo debe ser la misma dentro de las llaves. {}
como en el otro artículo. Por ejemplo, para crear afinidad de ubicación entre Producto y Ordenar objetos, puede especificar clave Producto: 1001 para un objeto Producto en la memoria caché y, a continuación, cree una afinidad del pedido asociado especificando Producto: 1001 dentro de {}
. Entonces el Ordenar la clave del objeto se puede especificar como Orden_ {Producto: 1001}. Esto asegurará que el producto y los pedidos existan dentro del mismo nodo.
Datos admitidos en el almacenamiento en caché de datos
Los objetos almacenados en la memoria caché para el almacenamiento en caché de datos pueden ser:
Tipos de datos primitivos
Note
Esta característica también está disponible en NCache Professional.
NCache admite todos los tipos de datos primitivos de .NET:
byte/sbyte | int/uint | corto/ucorto | largo/muy largo | objeto |
tanque | cadena | flotar | doble | decimal |
bool | DateTime | Espacio de tiempo |
Objetos de clase personalizados
Note
Esta característica también está disponible en NCache Professional.
Los datos también pueden ser cualquier objeto de clase serializable personalizado, por ejemplo, Producto objetos de clase. Los datos del objeto personalizado debe ser serializable, de lo contrario NCache lanzará una excepción de serialización.
NCache proporciona dos formas de serializar objetos personalizados:
Serialización nativa: puede usar el .NET provisto [Serializable] atributo en su clase personalizada.
Serialización compacta: NCache proporciona un marco de serialización personalizado para objetos personalizados. Este marco proporciona una serialización rentable para clases registradas de forma dinámica.
NCacheObjetos CacheItem de 's
Note
Esta característica también está disponible en NCache Professional.
Los datos también se pueden encapsular en NCache's Artículo de caché clase. CacheItem le permite agregar metadatos adicionales junto con el valor que se almacena en caché. Estos metadatos definen las propiedades del elemento como vencimiento, dependencias y más.
Puede leer más sobre las propiedades de CacheItem esta página.
Estructuras de datos
NCache ahora brinda soporte exclusivo para agregar/actualizar estructuras de datos, donde los datos se manipulan directamente sobre el servidor, mejorando el rendimiento. NCache proporciona soporte para las siguientes estructuras de datos:
Al igual que cualquier dato en NCache, estos se pueden consultar, bloquear, caducar y más. Para obtener más información sobre el uso de estructuras de datos en caché, consulte Estructuras de datos en caché.
JSON
NCache También admite agregar/modificar datos de caché en forma de JSON. JSON proporciona flexibilidad para la recuperación de datos, ya que los objetos personalizados se pueden recuperar como JSON y los objetos JSON se pueden recuperar como objetos personalizados. Lo siguiente es compatible con JSON:
Al igual que CacheItems, los datos JSON se pueden consultar, bloquear, caducar y más. Para obtener más información sobre el uso de JSON en NCache, Referirse a Caché de datos como JSON.
Vea también
Cómo conectarse a la memoria caché
Agregar datos a la caché
Recuperar datos de caché existentes
Quitar datos de la caché
Crear caché