Las siguientes características nuevas se proporcionan en NCache v5.3 SP1.
Las siguientes características nuevas se proporcionan en NCache v5.3.
NCache imágenes disponibles en Azure y AWS, el registro para la evaluación gratuita de NCache es compatible con NCache Administrador web. Cuando una máquina no está registrada ni con evaluación ni con clave de licencia, el NCache La pantalla predeterminada de Web Manager lleva a los usuarios a un proceso de registro para iniciar su evaluación o activar sus casillas.
La característica 'NCache NoSQL' lanzado en 5.3 ha sido renombrado como 'NCache Persistencia'. El funcionamiento de la función sigue siendo el mismo; sin embargo, se eliminan los proveedores adicionales. los NCache La persistencia ahora solo se puede usar con el almacén basado en el sistema de archivos incorporado.
Todos NoSQL También se ha cambiado el nombre de los cmdlets de PowerShell relacionados.
Se lanza un paquete NuGet independiente para NCache Procedimientos almacenados CLR. Esto ayuda a crear fácilmente procedimientos almacenados CLR que usan NCache API.
En lugar de usar las configuraciones especificadas en client.ncconf, los usuarios pueden obligar a las aplicaciones SignalR a usar las opciones de conexión especificadas en los archivos web.config o appsettings.json de la aplicación. Si se especifica, la aplicación utilizará esta configuración.
El valor del intervalo de actualización ahora se puede establecer en segundos en lugar de minutos. El cambio se realizó para adaptarse a escenarios en los que la actualización debe ejecutarse en un intervalo de menos de un minuto.
NCache está proporcionando una nueva característica llamada NoSQL Database donde toda la base de datos está en memoria y se distribuye, pero también se conserva en un almacenamiento permanente en tiempo real (a diferencia de otros productos que toman una instantánea periódica o conservan solo un registro de transacciones). Esta persistencia en tiempo real garantiza que sus datos en memoria estén siempre sincronizados y nunca se pierdan, incluso cuando reinicia todos los NCache servidores.
NCache NoSQL Database es súper rápido y escalable porque es 100% In-Memory y distribuido. Al mismo tiempo, NCache NoSQL Database persiste los datos como todas las demás bases de datos para que no pierda ningún dato, incluso si todos NCache los servidores se caen.
Puedes elegir persistir NoSQL Database in NCache Persistencia que súper rápido y muy fiable. O, si lo prefiere, puede persistir el NoSQL Database en una de las principales bases de datos de terceros. NCache proporciona las siguientes opciones de persistencia en tiempo real para NoSQL Database:
Puedes usar NCache NoSQL Database de las siguientes maneras:
NOTA: puede utilizar esta función desde aplicaciones .NET, Java, Node.js y Python.
NCache proporciona Lucene distribuido para aplicaciones .NET que utilizan Lucene para búsqueda de texto completo. Distributed Lucene toma el índice estándar de Lucene.NET y lo hace distribuido para que pueda escalar el índice de Lucene a múltiples NCache servidores incluso en tiempo de ejecución. Esto no solo le permite aumentar el tamaño de su índice sino también la capacidad de transacción de su aplicación porque su aplicación ahora se comunica con múltiples NCache servidores para Lucene.
Estos son algunos aspectos destacados de la función Distributed Lucene:
NCache ahora proporciona un potente cliente de Python tanto en Windows como en Linux. Este cliente Python tiene todas las características de la API del lado del cliente of NCache que tradicionalmente disfrutaban los clientes de .NET y Java.
NCache proporciona herramientas de importación y exportación como cmdlets de PowerShell. Con estas herramientas, puede importar o exportar datos JSON/CSV al NoSQL Database o fuera de ella. Esto le permite extraer todo o parte de su NoSQL database.
Si ha seleccionado NCache Proveedor de persistencia para NoSQL Database, luego todos los datos se guardan en varios archivos ubicados en una carpeta de red compartida (según la ruta UNC).
Puede usar herramientas regulares de copia de seguridad/restauración del sistema de archivos en estos datos. Sin embargo, tenga en cuenta que NCache le proporciona una herramienta de administración (como PowerShell Cmdlet) para suspender brevemente NCache escribe en el almacenamiento persistente mientras realiza la copia de seguridad del sistema de archivos. Sin embargo, todas las escrituras se realizan en la copia distribuida en memoria de los datos y se registran, de modo que cuando haya terminado con su copia de seguridad, puede activar las escrituras en el almacenamiento persistente. Y, luego, todas esas escrituras se aplican al almacenamiento de persistencia de la misma manera que si fueran en tiempo real.
A pesar de proporcionarle un mecanismo de copia de seguridad en línea, se recomienda que seleccione un horario de poco tráfico para realizar las copias de seguridad. En el futuro, NCache proporcionará una función de copia de seguridad completamente en línea para NCache Proveedor de persistencia de NoSQL Database donde incluso puede continuar escribiendo durante la copia de seguridad.
Sin embargo, si ha seleccionado SQL Server o MongoDB como opción de almacenamiento, puede utilizar las herramientas de copia de seguridad/restauración proporcionadas por esas bases de datos, incluida la copia de seguridad en línea.
Si ya tiene una aplicación .NET que usa Lucene, lo más probable es que tenga un índice de Lucene construido bastante grande. NCache le da la posibilidad de importar un índice de Lucene existente en NCache Distribuyó Lucene de manera masiva.
Esto es mucho más rápido que recrear ese índice leyendo documentos de él y agregando esos documentos a NCache Índice de Lucene distribuido. La razón de esto es que NCache Distributed Lucene copia datos a nivel de archivo masivo y no a nivel de documento.
Puede realizar los siguientes tipos de importación del índice de Lucene.
Las dos opciones de índice Import Lucene anteriores son posibles a través de PowerShell Cmdlets.
NCache particiona y guarda el índice de Lucene en un entorno distribuido y en cada NCache servidor. Y todo el índice se almacena como varios archivos. Por lo tanto, puede usar herramientas regulares de copia de seguridad/restauración del sistema de archivos en ellos. Sin embargo, en la versión actual de NCache, no se proporciona una copia de seguridad en línea, por lo que necesitará un tiempo de inactividad para garantizar una copia de seguridad correcta. Pero, si su aplicación no actualiza el índice Distributed Lucene en tiempo de ejecución, también puede hacer copias de seguridad en línea.
Restaurar un índice Distributed Lucene es lo mismo que restaurar archivos del sistema de archivos y, por lo tanto, es posible. Puede que tenga que reiniciar su caché con la misma información de configuración de distribución que tenía cuando hizo la copia de seguridad.
NCache ahora es totalmente compatible con .NET 6.0. Todos NCache Los servidores están compilados en .NET 6.0 (o .NET Framework 4.8 si ha descargado esa versión). NCache los clientes también son .NET 6.0. Sin embargo, NCache también proporciona soporte para versiones anteriores de ambos .NET Core y .NET Framework para NCache clientes.
NCache ahora le permite usar la serialización JSON para su ASP.NET / ASP.NET Core sesiones Anteriormente, la única opción que tenía era utilizar la serialización binaria proporcionada por .NET. Todavía tenemos la opción de serialización binaria, pero en .NET 6.0, la serialización binaria está deshabilitada de forma predeterminada y no se recomienda.
La serialización JSON también tiene la ventaja de que sus objetos .NET no están marcados como "Serializables". Anteriormente, tenía que realizar cambios en el código para marcar todos los objetos como "Serializables" o utilizar la función de serialización compacta de NCache. En ambos casos, requirió mucho trabajo extra para ti.
Con la serialización JSON, solo tiene que realizar cambios en los ajustes de configuración y no tocar el código en absoluto y ahora puede comenzar a usar objetos que no son serializables en ASP.NET / ASP.NET Core sesiones
Para incluir cualquier atributo de objeto en NCache Consultas SQL, debe indexarlo primero. Anteriormente, la única forma de indexar era definir un índice como parte de NCache configuración. Eso todavía es posible y una buena manera de hacerlo.
Sin embargo, ahora puede definir índices de consulta mediante programación mediante anotaciones personalizadas. Con esto, ahora tiene soporte completo de diferentes formas de crear un índice de consulta en NCache.
NCache ahora admite propiedades anulables para crear un índice y luego usarlos en consultas SQL. Esta función se proporciona porque las propiedades y los campos de .NET aceptan valores NULL. Pero, previamente NCache no proporcionó soporte para la búsqueda basada en valores nulos y ahora lo hace.
NCache ahora es compatible con los índices geoespaciales en la búsqueda de texto completo con Distributed Lucene. Al igual que el índice Lucene de búsqueda de texto completo regular, los índices geoespaciales también usan Lucene.NET internamente para admitir consultas geoespaciales. El paquete NuGet para índices geoespaciales es independiente del paquete NuGet de índice de búsqueda de texto completo.
NCache ahora es compatible con Faceted Search con Distributed Lucene. La búsqueda por facetas es una técnica que consiste en aumentar las técnicas de búsqueda tradicionales con un sistema de navegación por facetas. Esto permite al usuario restringir los resultados de la búsqueda mediante la aplicación de múltiples filtros basados en una clasificación facetada de los elementos.
NCache proporciona un paquete NuGet para búsqueda por facetas que tiene todas las API necesarias para realizar búsquedas por facetas.
Dado que .NET CLR usa memoria administrada, la recolección de elementos no utilizados y la fragmentación causan importantes problemas de rendimiento en cualquier aplicación de servidor de transacciones elevadas. NCache resolvió este problema antes implementando una agrupación de objetos muy inteligente y también dividiendo los objetos más grandes en menos de 80 XNUMX objetos para que LOH no se use con frecuencia.
Esta optimización de memoria anterior ya había mejorado NCache rendimiento bastante para las "operaciones atómicas" más utilizadas, como Obtener, Insertar, Actualizar, Eliminar elementos individuales. Sin embargo, otras áreas, como las operaciones masivas, los índices de consulta, la búsqueda de SQL, etc., no se optimizaron por completo de esta manera y, por lo tanto, resultaron en el uso frecuente de colecciones LOH y Gen2 y, por lo tanto, no en el mejor rendimiento.
Ahora bien, esta versión de NCache ha optimizado la gestión de la memoria en todas estas áreas, lo que se ha traducido en un rendimiento aún más rápido de NCache todo al rededor.
Se han realizado las siguientes optimizaciones:
NCache tradicionalmente se ejecutaba en un entorno local y, por lo tanto, no había necesidad de usar https para acceder NCache Administrador web. Pero, ahora que Azure, AWS y otras nubes son cada vez más frecuentes, surgen cada vez más situaciones en las que un usuario puede necesitar acceder NCache Administrador web a través de https.
NCache ahora proporciona soporte para https para acceder NCache Administrador web. De forma predeterminada, es http, pero puede configurarlo para usar https si tiene un certificado.
NCache ha requerido tradicionalmente que usted especifique NCache servidores basados en su dirección IP y no en los nombres de las máquinas. La razón detrás de esto fue que en muchas situaciones, NCache los servidores tienen varias tarjetas de interfaz de red (NIC) y no sabía a qué NIC se asignó el nombre de la máquina. Por lo tanto, usar la dirección IP para NCache servidores y clientes sigue siendo la forma preferida.
Pero ahora NCache le brinda la posibilidad de especificar nombres de máquinas en lugar de direcciones IP si lo desea. Puede especificar el nombre de la máquina para agregar un servidor de caché o un cliente de caché a la configuración de caché. Del mismo modo, todas las opiniones sobre NCache Web Manager continúa usando direcciones IP de forma predeterminada.