Valkey: Configurar Valkey con Sidekiq

Esta documentación forma parte de la guía Uso con Ruby. Consulte la guía completa aquí: Cómo conectar Valkey con Ruby.

👋 ¡Bienvenido a la documentación de Stackhero!

Stackhero ofrece una solución Valkey cloud lista para usar que proporciona una serie de beneficios, incluyendo:

  • Interfaz web UI Redis Commander incluida.
  • Tamaño y transferencias de mensajes ilimitados.
  • Actualizaciones sin esfuerzo con solo un clic.
  • Rendimiento óptimo y seguridad robusta gracias a una VM privada y dedicada.

Ahorra tiempo y simplifica tu vida: ¡solo toma 5 minutos probar la solución de Valkey cloud hosting de Stackhero!

Sidekiq usará automáticamente el servidor Valkey definido por la variable de entorno REDIS_URL.

Puede establecer la variable de entorno REDIS_URL así, solo reemplazando <password> y <XXXXXX> con su información:

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

Por defecto, Sidekiq está configurado de manera que no tolera ninguna perturbación de red. Para mejorar esto, sugerimos modificar la configuración del cliente Sidekiq en config/initializers/sidekiq.rb para mejorar la estabilidad:

# Archivo config/initializers/sidekiq.rb
Sidekiq.configure_client do |config|
  config.redis = {
    network_timeout: 5, # Establecer el tiempo de espera a 5 segundos
    pool_timeout: 5, # Establecer el tiempo de espera a 5 segundos
    reconnect_attempts: Array.new(240, 0.5) # Intentar reconectar 240 veces, cada 0.5 segundos (120 segundos/2 minutos en total) antes de desencadenar un error
  }
end

Esta configuración asegura que si su servidor Valkey se vuelve inaccesible, el cliente intentará reintentos durante un período de 2 minutos antes de informar un error. Esto da tiempo al servidor Valkey para reiniciarse, por ejemplo. Dependiendo del uso de su Sidekiq, puede ajustar esta configuración para adaptarse mejor a sus requisitos específicos.

Para más información sobre Sidekiq y Valkey, puede consultar la documentación oficial aquí.