1
0
Fork 0
mirror of https://github.com/neocities/neocities.git synced 2025-05-13 07:57:16 +02:00
neocities/workers/purge_cache_worker.rb

22 lines
No EOL
478 B
Ruby

class PurgeCacheWorker
include Sidekiq::Worker
sidekiq_options queue: :purgecache, retry: 10, backtrace: true
def perform(payload)
# :nocov:
attempt = 0
begin
attempt += 1
$pubsub_pool.with do |redis|
redis.publish 'purgecache', payload.to_json
end
rescue Redis::BaseConnectionError => error
raise if attempt > 3
puts "pubsub error: #{error}, retrying in 1s"
sleep 1
retry
end
# :nocov:
end
end