Editar

Compartilhar via


Perguntas frequentes de desenvolvimento do Redis Gerenciado do Azure (versão prévia)

Este artigo fornece respostas a perguntas comuns sobre como desenvolver o Redis Gerenciado do Azure (versão prévia).

Como posso começar a usar o Redis Gerenciado do Azure (versão prévia)?

Há várias maneiras de começar a usar o Redis Gerenciado do Azure (versão prévia).

Se ainda não tiver uma conta do Azure, você poderá:

O que as opções de configuração do StackExchange.Redis fazem?

O StackExchange.Redis tem muitas opções. Esta seção fala sobre algumas das configurações comuns. Para obter mais informações sobre opções do StackExchange.Redis, consulte configuração do StackExchange.Redis.

ConfigurationOptions Descrição Recomendação
AbortOnConnectFail Quando definido como true, a conexão não reconectará após uma falha de rede. Defina como false e deixe o StackExchange.Redis reconectar-se automaticamente.
ConnectRetry O número de vezes para repetir tentativas de conexão durante a conexão inicial. Consulte as observações a seguir para se orientar.
ConnectTimeout Tempo limite em ms para operações de conexão. Consulte as observações a seguir para se orientar.

Normalmente, os valores padrão do cliente são suficientes. Você pode realizar o ajuste fino das opções com base na sua carga de trabalho.

Novas tentativas

  • Para ConnectRetry e ConnectTimeout, a orientação geral é falhar rapidamente e tentar novamente. Essas diretrizes se baseiam na sua carga de trabalho e em quanto tempo em média leva para o cliente emitir um comando Redis e receber uma resposta.
  • Deixe o StackExchange.Redis reconectar-se automaticamente, em vez de você verificar o status de conexão e realizar a reconexão. Evitar usar a propriedade ConnectionMultiplexer.IsConnected.
  • Bola de neve – às vezes, pode ocorrer um problema em que você realiza novas tentativas e elas se tornam uma bola de neve, sem nunca se recuperarem. Caso ocorra essa bola de neve, considere usar um algoritmo de nova tentativa de retirada exponencial, conforme descrito em Diretrizes gerais sobre novas tentativas publicado pelo grupo de Padrões e práticas da Microsoft.

Valores de tempo limite

  • Considere sua carga de trabalho e defina os valores de acordo. Se você estiver armazenando valores grandes, defina o tempo limite como um valor mais alto.
  • Defina AbortOnConnectFail como false e deixe StackExchange.Redis reconectar-se para você.
  • Use uma única instância ConnectionMultiplexer de longa duração em vez de criar uma nova conexão para cada solicitação. Para obter um exemplo de como gerenciar uma conexão, consulte a classe `RedisConnection`` em Conexão ao cache com RedisConnection.
  • Defina a propriedade ConnectionMultiplexer.ClientName como um nome exclusivo de instância de aplicativo para fins de diagnóstico.
  • Usar várias instâncias de ConnectionMultiplexer para cargas de trabalho personalizadas.
    • Você pode seguir este modelo se tem variação de carga em seu aplicativo. Por exemplo:
    • Você pode ter um multiplexador para lidar com chaves grandes.
    • Você pode ter um multiplexador para lidar com chaves pequenas.
    • Você pode definir valores diferentes para o tempo limite da conexão e a lógica de repetição para cada ConnectionMultiplexer que você usa.
    • Definir a propriedade ClientName em cada multiplexador para ajudar no diagnóstico.
    • Essas diretrizes podem levar a uma latência mais simplificada por ConnectionMultiplexer.

Quais clientes do Redis posso usar?

Uma das coisas legais sobre o Redis é que há muitos clientes que dão suporte a várias linguagens de programação diferentes. Para obter uma lista atual de clientes, confira Clientes Redis. Para ver tutoriais que abrangem vários idiomas e clientes diferentes, confira Como usar o Redis Gerenciado do Azure.

Há um emulador local para Redis Gerenciados do Azure?

Não há emulador local para o Redis Gerenciado do Azure. No entanto, você pode executar uma cópia do Redis da comunidade em seu computador local e conectar-se a ele para obter uma experiência semelhante a um emulador de cache local, conforme mostrado no exemplo a seguir:

private static Lazy<ConnectionMultiplexer>
    lazyConnection = new Lazy<ConnectionMultiplexer> (() =>
    {
        // Connect to a locally running instance of Redis to simulate
        // a local cache emulator experience.
        return ConnectionMultiplexer.Connect("127.0.0.1:6379");
    });

public static ConnectionMultiplexer Connection
{
    get
    {
        return lazyConnection.Value;
    }
}

O Redis é executado nativamente no Linux, mas você também pode usar o Subsistema do Windows para Linux para executar o Redis em um computador com Windows. Para obter mais informações, consulte Instalar o Redis no Windows

Como posso executar comandos do Redis?

Você pode usar qualquer um dos comandos listados em Comandos do Redis, exceto pelos comandos listados em Comandos do Redis sem suporte no Redis Gerenciado do Azure. Você tem várias opções para executar comandos do Redis.

Também é possível usar as ferramentas de linha de comando do Redis. Para usa, consulte Como usar a ferramenta de linha de comando Redis com Redis Gerenciado do Azure

Por que o Redis Gerenciado do Azure não tem uma referência da biblioteca de classes MSDN?

O Redis Gerenciado do Microsoft Azure é baseado no popular armazenamento de dados na memória, o Redis. Você pode usar uma ampla variedade de clientes Redis para muitas linguagens de programação. Cada cliente tem sua própria API, que faz chamadas para a instância do Redis Gerenciado do Azure usando comandos do Redis.

Como cada cliente é diferente, não é possível encontrar uma referência de classe centralizada no MSDN. Cada cliente mantém a própria documentação de referência. Além da documentação de referência, há vários tutoriais que mostram como começar a usar o Redis Gerenciado do Azure usando diferentes linguagens e clientes de cache. Para acessar esses tutoriais, confira Como usar o Redis Gerenciado do Azure e seus artigos relacionados no sumário.

Quais são os bancos de dados do Redis?

Os Bancos de Dados Redis são apenas uma separação lógica dos dados dentro da mesma instância do Redis. A memória do cache é compartilhada entre todos os bancos de dados, e o consumo real da memória de um determinado banco de dados depende de chaves/valores armazenados no banco de dados. Nesse momento, o Redis Gerenciado do Azure é compatível com apenas um único banco de dados por instância.

Saiba mais sobre outras perguntas frequentes sobre Redis Gerenciados do Azure.