Novidades no NCache 5.3?

O que há de novo na v5.3 SP1?

Os seguintes novos recursos são fornecidos em NCache v5.3SP1.

O que há de novo na v5.3?

Os seguintes novos recursos são fornecidos em NCache v5.3.

 

Registro de Avaliação através NCache Web Manager

Escolha NCache imagens disponíveis no Azure e AWS, o registro para avaliação gratuita de NCache é suportado em NCache Gerenciador Web. Quando uma máquina não está registrada com avaliação ou chave de licença, o NCache A tela padrão do Web Manager leva os usuários a um processo de registro para iniciar sua avaliação ou ativar suas caixas.

 

Renomeação de NCache NoSQL para NCache Persistência

A característica 'NCache NoSQL' lançado em 5.3 foi renomeado para 'NCache Persistência'. O funcionamento do recurso permanece o mesmo, no entanto, os provedores adicionais são removidos. o NCache A persistência agora só pode ser usada com o armazenamento baseado no sistema de arquivos integrado.

Todos os Produtos NoSQL cmdlets do PowerShell relacionados também foram renomeados.

 

Pacote NuGet separado para NCache Procedimentos de armazenamento CLR

Um pacote NuGet separado é lançado para NCache Procedimentos Armazenados CLR. Isso ajuda na criação fácil de procedimentos armazenados CLR que usam NCache API.

 

Suporte para opções de conexão em NCache SignalR Backplane

Em vez de usar as configurações especificadas em client.ncconf, os usuários podem forçar os aplicativos SignalR a usar as opções de conexão especificadas nos arquivos web.config ou appsettings.json do aplicativo. Se especificado, o aplicativo usará essas configurações.

 

Valor do intervalo de atualização alterado de minutos para segundos

O valor do intervalo de atualização agora pode ser definido em segundos em vez de minutos. A alteração foi feita para acomodar cenários em que a atualização deve ser executada em um intervalo de menos de um minuto.

 

NoSQL Database (Na memória com persistência)

NCache está fornecendo um novo recurso chamado NoSQL Database onde todo o banco de dados é in-memory e distribuído, mas também é mantido em um armazenamento permanente em tempo real (diferentemente de outros produtos que tiram um instantâneo periódico ou persistem apenas um log de transações). Essa persistência em tempo real garante que seus dados na memória estejam sempre sincronizados e nunca perdidos, mesmo quando você reiniciar todos os NCache Servidores.

NCache NoSQL Database é super-rápido e escalável porque é 100% In-Memory e distribuído. Ao mesmo tempo, NCache NoSQL Database persiste dados assim como todos os outros bancos de dados para que você não perca nenhum dado, mesmo que todos NCache servidores são derrubados.

Você pode optar por persistir você NoSQL Database in NCache Persistência que super-rápido e muito confiável. Ou, se preferir, você pode persistir o NoSQL Database em um dos principais bancos de dados de terceiros. NCache fornece as seguintes opções de persistência em tempo real para NoSQL Database:

  • NCache Provedor de Persistência: a opção padrão. NCache usa persistência de arquivo baseada em LiteDB em um local de rede compartilhado (Caminho UNC). Você pode escolher SSD / HDD, NAS / SAN ou armazenamento em nuvem com base em sua preferência.
  • Provedor do SQL Server: todos os dados são armazenados em um banco de dados SQL Server. Como as gravações geralmente são menos de 20% das operações, enquanto 80% são leituras, salvar dados no SQL Server ainda mantém seu aplicativo super-rápido e com escalabilidade linear.
  • Provedor MongoDB: todos os dados são armazenados em um banco de dados MongoDB. Como as leituras são 80% do tempo e todas são in-memory, seu aplicativo é muito mais rápido do que se você acessasse o MongoDB diretamente.
  • Oracle / Cosmos DB / Outros (em breve): forneceremos mais opções de armazenamento de banco de dados de terceiros em breve, assim que o NCache NoSQL Database a arquitetura de armazenamento é baseada em provedor.

Você pode usar NCache NoSQL Database das seguintes maneiras:

  • Criar Nova NoSQL Database: isso cria o banco de dados com sua opção de armazenamento e também cria uma cópia distribuída na memória dele.
  • Abrir existente NoSQL Database: isso usa um já criado NoSQL Database e cria uma cópia distribuída na memória dele.

NOTA: você pode usar esse recurso em aplicativos .NET, Java, Node.js e Python.

 

Lucene distribuído para .NET (Pesquisa de texto completo)

NCache fornece Lucene distribuído para aplicativos .NET usando o Lucene para pesquisa de texto completo. O Lucene distribuído pega o índice Lucene.NET padrão e o distribui para que você possa dimensionar o índice Lucene para vários NCache servidores mesmo em tempo de execução. Isso não apenas permite que você aumente o tamanho do seu índice, mas também a capacidade de transação do seu aplicativo, porque seu aplicativo agora fala com vários NCache servidores para Lucene.

Aqui estão alguns destaques do recurso Distributed Lucene:

  • Nenhuma alteração de código necessária para uso: você não alterou nenhum código em seu aplicativo Lucene existente para usar o Lucene distribuído. A API Lucene.NET padrão é suportada.
  • Índice Lucene Distribuído para Múltiplos NCache Servidores: NCache distribui o índice Lucene e o mantém em vários NCache servidores. Cada servidor persiste uma parte de todo o índice. NCache modificou sua topologia de Cache Particionado e Cache de Réplica de Partição para lidar com a persistência distribuída.
  • Adicionar / Remover NCache Servidores em tempo de execução: você pode adicionar ou remover NCache servidores em tempo de execução. Cada vez que você adiciona um servidor, o índice Lucene existente é particionado ainda mais e uma parte é copiada para esse servidor recém-adicionado. Quando você remove um servidor, seu índice é copiado e mesclado com outros NCache Servidores.
  • Particionamento direcionado (não automático): devido ao fato de que a maioria dos índices Lucene são bastante grandes, se NCache servidor cai em tempo de execução, o particionamento não é refeito automaticamente como é feito para situações não-Lucene em NCache. No entanto, se você adicionar ou remover explicitamente NCache servidores com NCache ferramentas administrativas, as partições são criadas ou excluídas e o índice Lucene é particionado e copiado para o novo NCache servidor ou índice Lucene do NCache servidor que está sendo excluído é copiado e mesclado com outras partições no cluster.
  • Somente cache particionado/Cache de réplica de partição: O recurso Lucene distribuído está disponível apenas nessas duas topologias de armazenamento em cache. A razão para isso é que outras duas topologias de cache (Cache Espelhado / Cache Replicado) não agregam muito valor a esse recurso.
 

Cliente Python

NCache agora fornece um poderoso cliente Python no Windows e no Linux. Este cliente Python tem todos os recursos da API do lado do cliente of NCache que tradicionalmente os clientes .NET e Java desfrutavam.

 

Importar/Exportar para NoSQL Database

NCache fornece ferramentas de importação e exportação como cmdlets do PowerShell. Com essas ferramentas, você pode importar ou exportar dados JSON/CSV para o NoSQL Database ou fora dele. Isso permite que você extraia a totalidade ou partes do seu NoSQL database.

 

Backup / Restore NoSQL Database

Se você selecionou NCache Provedor de Persistência para NoSQL Database, todos os dados são mantidos em vários arquivos localizados em uma pasta de rede compartilhada (com base no caminho UNC).

Você pode usar ferramentas regulares de backup/restauração do sistema de arquivos nesses dados. No entanto, observe que NCache fornece uma ferramenta de administração (como PowerShell Cmdlet) para suspender brevemente NCache grava no armazenamento persistente enquanto você executa o backup do sistema de arquivos. No entanto, todas as gravações estão sendo feitas na cópia distribuída na memória dos dados e registradas para que, quando terminar o backup, você possa ativar as gravações no armazenamento de persistência. E, então, todas essas gravações são aplicadas ao armazenamento de persistência da mesma maneira como se fossem em tempo real.

Apesar de fornecer um mecanismo de backup online, é recomendável selecionar um horário de baixo tráfego para fazer os backups. No futuro, NCache fornecerá um recurso de Backup totalmente online para NCache Provedor de Persistência de NoSQL Database onde você pode até continuar fazendo gravações durante o backup.

No entanto, se você selecionou SQL Server ou MongoDB como sua opção de armazenamento, poderá usar as ferramentas de backup/restauração fornecidas por esses bancos de dados, incluindo backup online.

 

Importar Índice de Lucene

Se você já tem um aplicativo .NET usando o Lucene, é provável que tenha um índice Lucene bastante grande construído. NCache oferece a capacidade de importar um índice Lucene existente para NCache Distribuiu o Lucene em massa.

Isso é muito mais rápido do que recriar esse índice lendo documentos dele e adicionando esses documentos ao NCache Índice distribuído de Lucene. A razão disso é que NCache O Lucene distribuído copia dados em nível de arquivo em massa e não em nível de documento.

Você pode fazer os seguintes tipos de importação do índice Lucene.

  • Importe o Índice Lucene existente para NCache: se você já tem um índice Lucene construído, você pode usar NCache ferramentas de importação para importá-lo rapidamente para NCache Distribuir Lucene. E seu índice é copiado no nível do arquivo e não no nível do documento, o que é muito mais rápido.
  • Importar Índice Lucene Distribuído existente: se você já tem um NCache Índice Lucene distribuído e você deseja importá-lo para outro local/ambiente, pode fazê-lo facilmente. O índice é copiado no nível do arquivo em massa e não no nível do documento, por isso é muito rápido.

Ambas as opções de índice Import Lucene acima são possíveis por meio de cmdlets do PowerShell.

 

Índice de Lucene distribuído de backup/restauração

NCache partições e salva o índice Lucene em um ambiente distribuído e em cada NCache servidor. E todo o índice é armazenado como vários arquivos. Portanto, você pode usar ferramentas regulares de backup/restauração do sistema de arquivos neles. No entanto, na versão atual do NCache, o backup online não é fornecido, portanto, você precisará de um tempo de inatividade para garantir o backup correto. Mas, se seu aplicativo não estiver atualizando o índice Lucene distribuído em tempo de execução, você também poderá fazer backups online.

Restaurar um índice Lucene distribuído é o mesmo que restaurar arquivos do sistema de arquivos e, portanto, é possível. Você pode ter que reiniciar seu cache com as mesmas informações de configuração de distribuição que você tinha quando fez o backup.

 

Suporte .NET 6.0

NCache agora suporta totalmente o .NET 6.0. Tudo NCache Os servidores são compilados em .NET 6.0 (ou .NET Framework 4.8 se você baixou essa versão). NCache os clientes também são .NET 6.0. No entanto, NCache também fornece suporte para a versão anterior de ambos .NET Core e .NET Framework para NCache clientes.

 

Sessões serializadas JSON (ASP.NET / ASP.NET Core)

NCache agora permite que você use a serialização JSON para seu ASP.NET / ASP.NET Core sessões. Anteriormente, a única opção que você tinha era usar a serialização binária fornecida pelo .NET. Ainda temos a opção de serialização binária, mas no .NET 6.0, a serialização binária está desabilitada por padrão e não é recomendada.

A Serialização JSON também tem a vantagem de seus objetos .NET não serem marcados como "Serializável". Anteriormente, você precisava fazer alterações no código para marcar todos os objetos como "Serializáveis" ou usar o recurso de serialização compacta de NCache. Em ambos os casos, exigiu muito trabalho extra para você.

Com a Serialização JSON, você só precisa alterar a configuração e não tocar no código e agora pode começar a usar objetos que não são serializáveis ​​em ASP.NET / ASP.NET Core sessões.

 

Índice de consulta SQL usando anotações

Para incluir qualquer atributo de objeto em NCache Consultas SQL, você deve indexá-lo primeiro. Anteriormente, a única maneira de indexar era definir um índice como parte de NCache configuração. Isso ainda é possível e uma boa maneira de fazer isso.

No entanto, agora você pode definir índices de consulta programaticamente usando anotações personalizadas. Com isso, agora você tem suporte total para diferentes formas de criar índice de consulta em NCache.

 

Suporte anulável em consultas SQL

NCache agora oferece suporte a propriedades anuláveis ​​para criar um índice e usá-las em consultas SQL. Esse recurso é fornecido porque as propriedades e os campos do .NET são anuláveis. Mas, anteriormente NCache não forneceu suporte à pesquisa com base em valores nulos e agora oferece.

 

Índices Geoespaciais para Lucene Distribuído

NCache agora suporta índices geoespaciais na pesquisa de texto completo com Lucene distribuído. Assim como o índice Lucene de pesquisa de texto completo normal, os índices geoespaciais também usam o Lucene.NET internamente para oferecer suporte a consultas geoespaciais. O pacote NuGet para índices geoespaciais é separado do pacote NuGet de índice de pesquisa de texto completo.

Pesquisa facetada para Lucene distribuído

NCache agora suporta Pesquisa Facetada com Lucene Distribuído. Faceted Search é uma técnica que envolve o aumento das técnicas tradicionais de busca com um sistema de navegação facetada. Isso permite que o usuário restrinja os resultados da pesquisa aplicando vários filtros com base em uma classificação facetada dos itens.

NCache fornece um pacote NuGet para pesquisa facetada que possui todas as APIs necessárias para realizar pesquisas facetadas.

 

Otimizações de memória para desempenho mais rápido

Como o .NET CLR usa memória gerenciada, a coleta de lixo e a fragmentação causam grandes problemas de desempenho em qualquer aplicativo de servidor de alta transação. NCache resolveu esse problema anteriormente implementando um pool de objetos muito inteligente e também dividindo objetos maiores em menos de 80K objetos, de modo que o LOH não é usado com frequência.

Essa otimização de memória anterior já havia melhorado NCache desempenho bastante para as "operações atômicas" mais comumente usadas, como Obter, Inserir, Atualizar, Excluir de itens individuais. No entanto, várias outras áreas, como operações em massa, índices de consulta, pesquisa SQL, etc., não foram totalmente otimizadas dessa maneira e, portanto, resultaram no uso frequente de coleções LOH e Gen2 e, portanto, não tiveram o melhor desempenho.

Agora, esta versão do NCache otimizou o gerenciamento de memória em todas essas áreas, o que resultou em um desempenho ainda mais rápido de NCache tudo em volta.

As seguintes otimizações foram feitas:

  1. Agrupamento de objetos em novas áreas para garantir que objetos maiores sejam reutilizados em vez de deixá-los para serem coletados pelo GC.
  2. Evitando alocação em LOH em novas áreas.
  3. Usando a versão mais recente do Protocol Buffers (Protobuf) que tem um desempenho muito melhor
 

Suporte para https (NCache Gerenciador da Web)

NCache tradicionalmente executado em um ambiente local e, portanto, não havia necessidade de usar https para acessar NCache Gerenciador Web. Mas, agora com o Azure, AWS e outras nuvens se tornando muito predominantes, mais e mais situações estão surgindo em que um usuário pode precisar acessar NCache Gerenciador de Web através de https.

NCache agora fornece suporte para https para acessar NCache Gerenciador Web. Por padrão, é http, mas você pode configurá-lo para usar https se tiver um certificado.

 

Suporte para nomes de máquina (NCache Gerenciador da Web)

NCache tradicionalmente exigia que você especificasse NCache servidores baseados em seus endereços IP e não em nomes de máquinas. A razão por trás disso foi que em muitas situações, NCache os servidores têm várias placas de interface de rede (NICs) e você não sabia para qual NIC o nome da máquina foi mapeado. Portanto, usando o endereço IP para NCache servidores e clientes ainda é a forma preferida.

Mas agora NCache fornece a capacidade de especificar nomes de máquinas em vez de endereços IP, se desejar. Você pode especificar o nome da máquina para adicionar um servidor de cache ou um cliente de cache à configuração de cache. Da mesma forma, todos os pontos de vista sobre NCache O Web Manager continua a usar endereços IP por padrão.

© Copyright Alachisoft 2002 - . Todos os direitos reservados. NCache é uma marca registrada da Diyatech Corp.