【问题标题】:Sidekiq with Heroku & Rails : my Jobs are stucks in queue on HerokuSidekiq with Heroku & Rails : 我的工作在 Heroku 上排队
【发布时间】:2018-11-09 17:41:36
【问题描述】:

解决方案编辑:

Heroku 上的 worker 按钮没有从 Off 变为 On...


我正在尝试在我的 RailsApp 上使用 Sidekiq。该配置在开发中运行良好,但在使用 Heroku 的 Product 中,所有作业都已入队但卡在队列中。

一些见解:

我已经在 Heroku 上完成了 Redis_to_go 的配置。

Sidekiq 仪表板

Heroku 作业日志

2018-11-09T17:28:15.648569+00:00 app[web.1]: I, [2018-11-09T17:28:15.648360 #4]  INFO -- : [66d0e53c-5fd1-42a9-bb28-4df4a40b6f09] 

[ActiveJob] Enqueued CreateMemberContactJob (Job ID: 12785f83-5b69-4bc4-ad87-3945694e8337) 

to Sidekiq(default) with arguments: #<GlobalID:0x000055ec32248780 @uri=#<URI::GID gid://youguildapp/Member/85>>

我所有的配置和代码: Procfile

web: bundle exec puma -C config/puma.rb
worker: bundle exec sidekiq

Application.rb

config.active_job.queue_adapter = :sidekiq

Registrationscontroller.rb

CreateMemberContactJob.perform_later @member

类 CreateMemberContactJob

CreateMemberContactJob

class CreateMemberContactJob < ApplicationJob
  queue_as :default

  def perform(member)
    api_instance = SibApiV3Sdk::ContactsApi.new
    create_contact = SibApiV3Sdk::CreateContact.new
    create_contact.email = member.email

    api_instance.create_contact(create_contact)
  end

end

请帮帮我,我已经通过了所有 SO 帖子和 Sidekiq wifi 以及 Medium 帖子和圣书,但我没有弄清楚。

非常感谢

【问题讨论】:

  • 愚蠢的假设,但请检查您的 sidekiq worker 是否在 Heroku 上打开,默认情况下它是关闭的
  • 这很可能是答案:您实际上还没有启动 Sidekiq 工人测功机。
  • @Vasilisa & Mike,您找到了解决方案:这是按钮...非常感谢!干杯

标签: ruby-on-rails heroku sidekiq rspec-sidekiq


【解决方案1】:

这就是你打开 heroku worker dyno 按钮的方法:

【讨论】:

    猜你喜欢
    • 2014-12-03
    • 1970-01-01
    • 2012-11-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-12-20
    • 2015-04-30
    • 1970-01-01
    相关资源
    最近更新 更多