обновление записи в соответствии с предложением - это нормально, но это только часть решения ...
обратный вызов поможет, если я хочу больше контроля над тем, что делать, если он не работает .. т.е.:
Delayed::Job.enqueue InstructionRequestJob.new( p1, p2 )
InstructionRequestJob perform
- perform a task on a remote server
- get a response
- case response
when OK
update attribute ( as suggested)
else
# how many attempts ?
if too_many_attempts
update attribute
destroy the job
else
reschedule the job for another attempt
- end