Redis bağlantı hatalarını kurtarmanın bir yolu olup olmadığını bilmek istiyorum, böylece işleri zorlamak için alternatif bir veri deposu kullanabilirim. Geçerli iş parçacığı kullanıcısını ayarlamak için istemci taraf ara katman yazılımını kullanıyoruz, bu nedenle kurtarmaya .perform_async çok fazla yardımcı olmaz. Ayrıca, istemci tarafı aracı yazılımı hata işlemeyi desteklemiyor gibi görünüyor. Bir şekilde istemci middleware içinde redis bağlantı hataları için kurtarma olabilir bir geçici çözüm var mı? Düşünebildiğim yaklaşım, redis için bir kalp atışı uygulamaktı, işlerini middleware içindeki alternatif bir veri deposuna itmek için küresel bir bayrak kurdu. Herhangi bir yardım takdir edilir. config/başlatıcıları/sidekiq.rb içindeSidekiq İstemci hata yönetimi
0
A
cevap
0
:
class SidekiqErrorHandler
def call(worker_class, job, queue, redis_pool)
begin
Sidekiq.redis {|conn| conn.ping}
yield
rescue
klass = worker_class.constantize
klass.new.perform(*(job['args']))
false
end
end
end
constantize
Rails 4 app gereksiz, ama son zamanlarda bir Raylar 5 app ihtiyaç vardı buldum.
Sidekiq.configure_client do |config|
config.redis = { :size => 1 }
config.client_middleware { |chain| chain.add SidekiqErrorHandler } unless Rails.env.test?
end
Bu (aynı dosyada) da kullanışlıdır:
if Rails.env.development?
require 'sidekiq/testing'
Sidekiq::Testing.inline!
end
Bu sidekiq işleri yerel olarak kolay hata ayıklama için izin vermek, in-line çalışmasını sağlar.
İlgili konular
- 1. Sidekiq
- 2. Meteor JavaScript - Hata Yönetimi
- 3. Rake Görev: hata yönetimi
- 4. CakePHP'de Ajax hata yönetimi
- 5. Socket.io hata yönetimi
- 6. ElasticSearch.NET bağlantısı/istemci yönetimi yaşam döngüsü
- 7. Raylar, Sidekiq - Redis NOAUTH
- 8. Sidekiq hatası Başlatılmamış Sabit
- 9. Sidekiq veya Rails
- 10. Yeniden Başlatma Sidekiq
- 11. Çerçeveyi paralel oynatır WSClient çağrıları hata yönetimi
- 12. Wcf özel durum yönetimi
- 13. Doküman Yönetimi/İçerik Yönetimi Arayış
- 14. Sidekiq işçisi benim arka plan işler için <a href="http://mperham.github.com/sidekiq/">Sidekiq</a> kullanıyorum
- 15. Sidekiq ve Foreman ile Byebug nasıl kullanılır
- 16. Üzüm hatası yönetimi stratejisi?
- 17. Sidekiq argümanları performans yöntemine nasıl aktarıyor?
- 18. Hata Uzaktan istirahat API İstemci jBPM 6.3
- 19. Python flask ve özel istemci hata iletileri
- 20. Çekirdek Verileri Bellek Yönetimi
- 21. Python alt işlem hata yönetimi. Sıfır olmayan çıkış durumunu yakalayamıyor
- 22. C# asp.net mvc özel hata yönetimi JSON ile
- 23. PowerShell bağımlılık yönetimi
- 24. İşçiler işlerini bitirdikten sonra bellek ayrılmıyor Sidekiq
- 25. Uzun süredir çalışan Sidekiq işleri devam ediyor
- 26. Sidekiq işini eş zamanlı olarak gerçekleştirin
- 27. Sürekli işlemler için Sidekiq kullanabilir miyim?
- 28. MultipeerConnectivity Oturum yönetimi
- 29. İstemci
- 30. WebApp Şifre Yönetimi - Hashing, Tuzlama, vb