【发布时间】:2018-09-17 15:37:23
【问题描述】:
我在 AWS 和 SQS 上创建了一个名为 queue123 的工作机器,并且我使用 shoryuken gem 作为适配器 ( config.active_job.queue_adapter = :shoryuken at application.rb )。
class EmailVerificationMailerJob < ActiveJob::Base
queue_as 'queue123'
def perform(user)
EmailVerificationMailer.send_email_otp(user)
end
end
当请求命中工作时,它会显示
Aws::SQS::Errors::NonExistentQueue(指定的队列默认不存在。):错误。
我在这里缺少什么。
【问题讨论】:
-
这里提到的队列是否存在于 SQS 中?
-
是的。这是 SQS 中的一个队列退出
-
@Aarthi 您是否将请求发送到正确的 AWS 区域?每个区域的 SQS 部署独立于其他区域。如果(例如)您在 us-east-2 中创建了一个队列并且此代码针对 us-east-1 运行,则 us-east-1 将正确报告该队列不存在。
-
你是在请求中使用队列name,还是队列url?区别很重要。
标签: ruby-on-rails amazon-web-services amazon-sqs