Redis
 sql >> Teknologi Basis Data >  >> NoSQL >> Redis

Kondisi kerja Sidekiq

Anda dapat menggunakan Pekerjaan Unik Sidekiq

dengan pendekatan ini, hanya 1 pekerjaan dengan parameter yang sama yang akan hadir secara bersamaan.

jadi buat model

class UserJobs
  belongs_to :user
end

class User
  has_many :user_jobs
end

class Worker
  sidekiq_options unique: true

  def perform params
    user = User.find(params[:id])
    user.user_jobs.order('id asc').each do |job|
      job.worker_class.constantize.new.perform(job.params)
      job.destroy
    end
  end
end

daripada ketika Anda perlu menjalankan pekerjaan apa pun untuk dilakukan pengguna:

user.user_jobs.create worker_class: Klass, params: params
Worker.perform_async(user_id: user.id)



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Laravel :Redis Tidak ada koneksi yang dibuat :[tcp://127.0.0.1:6379]

  2. UI Web Logstash tidak dimulai

  3. dapatkan objek dari redis tanpa evaluasi?

  4. Apakah panjang nama memengaruhi kinerja di Redis?

  5. pindaian vs kunci klien ruby ​​redis