Valkey: Configurar Valkey com Sidekiq

Esta documentação faz parte do guia Utilizar com Ruby. Consulte o guia completo aqui: Como conectar Valkey com Ruby.

👋 Bem-vindo à documentação do Stackhero!

A Stackhero oferece uma solução Valkey cloud pronta a usar que proporciona uma série de benefícios, incluindo:

  • Interface web UI Redis Commander incluída.
  • Tamanho e transferências de mensagens ilimitados.
  • Atualizações simplificadas com apenas um clique.
  • Desempenho ótimo e segurança robusta alimentados por uma VM privada e dedicada.

Poupe tempo e simplifique a sua vida: são necessários apenas 5 minutos para experimentar a solução Valkey cloud hosting da Stackhero!

Sidekiq usará automaticamente o servidor Valkey definido pela variável de ambiente REDIS_URL.

Pode definir a variável de ambiente REDIS_URL assim, apenas substituindo <password> e <XXXXXX> pelas suas informações:

REDIS_URL="rediss://default:<password>@<XXXXXX>.stackhero-network.com:<PORT_TLS>"

Por padrão, o Sidekiq está configurado de forma a não tolerar qualquer perturbação na rede. Para melhorar isso, sugerimos modificar a configuração do cliente Sidekiq em config/initializers/sidekiq.rb para aumentar a estabilidade:

# Ficheiro config/initializers/sidekiq.rb
Sidekiq.configure_client do |config|
  config.redis = {
    network_timeout: 5, # Defina o timeout para 5 segundos
    pool_timeout: 5, # Defina o timeout para 5 segundos
    reconnect_attempts: Array.new(240, 0.5) # Tente reconectar 240 vezes, a cada 0,5 segundo (120 segundos/2 minutos no total) antes de acionar um erro
  }
end

Esta configuração garante que, se o seu servidor Valkey se tornar indisponível, o cliente tentará novas tentativas durante 2 minutos antes de relatar um erro. Isso dá tempo para o servidor Valkey reiniciar, por exemplo. Dependendo do uso do seu Sidekiq, pode ajustar esta configuração para melhor atender às suas necessidades específicas.

Para mais informações sobre Sidekiq e Valkey, pode consultar a documentação oficial aqui.