Class: AtomicSidekiq::AtomicOperation::Heartbeat

Inherits:
Base
  • Object
show all
Defined in:
lib/atomic_sidekiq/atomic_operation/heartbeat.rb

Constant Summary collapse

HEARTBEAT_SCRIPT =
File.read(
  File.join(File.dirname(__FILE__),
            "./lua_scripts/heartbeat.lua")
)

Instance Method Summary collapse

Methods inherited from Base

#initialize

Constructor Details

This class inherits a constructor from AtomicSidekiq::AtomicOperation::Base

Instance Method Details

#perform(jid:, timeout:) ⇒ Object



9
10
11
12
13
14
15
16
# File 'lib/atomic_sidekiq/atomic_operation/heartbeat.rb', line 9

def perform(jid:, timeout:)
  key = in_flight_job_key(jid)
  return unless key

  redis do |conn|
    conn.eval(HEARTBEAT_SCRIPT, [key], [expiration_date(timeout)])
  end
end