Valkey: Konfiguracja Valkey z Sidekiq

Ta dokumentacja jest częścią przewodnika Używanie z Ruby. Pełny przewodnik znajdziesz tutaj: Jak połączyć Valkey z Ruby.

👋 Witamy w dokumentacji Stackhero!

Stackhero oferuje gotowe do użycia rozwiązanie Valkey cloud, które zapewnia szereg korzyści, w tym:

  • Wbudowany interfejs webowy Redis Commander.
  • Nielimitowana wielkość i transfer wiadomości.
  • Bezproblemowe aktualizacje jednym kliknięciem.
  • Optymalna wydajność i wysoki poziom bezpieczeństwa dzięki prywatnej, dedykowanej infrastrukturze.

Oszczędzaj czas i uprość sobie życie: wystarczy 5 minut, aby przetestować rozwiązanie Valkey cloud hosting od Stackhero!

Sidekiq automatycznie użyje serwera Valkey zdefiniowanego przez zmienną środowiskową REDIS_URL.

Możesz ustawić zmienną środowiskową REDIS_URL w następujący sposób, zastępując <password> i <XXXXXX> swoimi danymi:

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

Domyślnie konfiguracja Sidekiq nie przewiduje żadnej tolerancji na zakłócenia sieciowe. Aby to poprawić, zalecamy modyfikację konfiguracji klienta Sidekiq w pliku config/initializers/sidekiq.rb, aby zwiększyć stabilność:

# Plik config/initializers/sidekiq.rb
Sidekiq.configure_client do |config|
  config.redis = {
    network_timeout: 5, # Ustaw timeout na 5 sekund
    pool_timeout: 5, # Ustaw timeout na 5 sekund
    reconnect_attempts: Array.new(240, 0.5) # Spróbuj połączyć się ponownie 240 razy, co 0,5 sekundy (łącznie 120 sekund/2 minuty) zanim zostanie zgłoszony błąd
  }
end

Ta konfiguracja zapewnia, że jeśli Twój serwer Valkey stanie się niedostępny, klient będzie próbował ponownie połączyć się przez 2 minuty zanim zgłosi błąd. Daje to czas na ponowne uruchomienie serwera Valkey, na przykład podczas restartu. W zależności od sposobu użycia Sidekiq w Twojej aplikacji, możesz dostosować to ustawienie do własnych potrzeb.

Więcej informacji o Sidekiq i Valkey znajdziesz w oficjalnej dokumentacji tutaj.