gpt4 book ai didi

ruby-on-rails - 在 Rails 项目中设置 Shoryuken、Active Job 和 Amazon SQS

转载 作者:行者123 更新时间:2023-12-03 17:39:29 30 4
gpt4 key购买 nike

作为 AWS 的一个相对新手,根据设置文档让 Shoryuken gem(带有 Active Job 和 Active Record)工作已经有点曲线了。

  • 中间件 :我不确定中间件是否是设置的必要部分,因为它只在基本示例中产生。如果您需要在从队列中获取消息之前或之后执行操作,我的理解是否正确。
  • Shoryuken 插入但不从 SQS 获取消息 :此时,Shoryuken 正在将消息传送到 SQS 队列,我可以在 AWS 控制台中看到消息(在可见的消息中),但即使队列中没有任何内容,Shoryuken 也没有提取它们来执行。

  • 控制台
    irb(main):003:0> InvitationMailer.send_invite(ii).deliver_later
    Enqueued ActionMailer::DeliveryJob (Job ID: 5c65184c-8656-42bd-95ce-e0ded78a9a44) to Shoryuken(development_mailers) with arguments: "InvitationMailer", "send_invite", "deliver_now", gid://projectname/Invitation/25
    => #<ActionMailer::DeliveryJob:0x007f7fad761a40 @arguments=["InvitationMailer", "send_invite", "deliver_now", #<Invitation id: 25, invite_code: "324234325", sender_id: 7, invitee_first_name: "Kylo", invitee_last_name: "Ren", invitee_email: "test128@somewhere.com", status: "sent", joined_member_id: nil, created_at: "2016-09-24 03:14:44", updated_at: "2016-09-24 04:16:36", invite_message: nil, sent_at: nil, accepted_at: nil, completed_at: nil, clicked_at: nil, source: nil>], @job_id="5c65184c-8656-42bd-95ce-e0ded78a9a44", @queue_name="development_mailers">

    irb(main):004:0> Shoryuken.options
    => {:concurrency=>25, :queues=>[], :aws=>{}, :delay=>0, :timeout=>8, :lifecycle_events=>{:startup=>[], :quiet=>[], :shutdown=>[]}}
    irb(main):005:0>

    升龙研.yml
    aws:
    access_key_id: <%= ENV['AWS_ACCESS_KEY_ID'] %>
    receive_message:
    attribute_names:
    - ApproximateReceiveCount
    - SentTimestamp
    region: <%= ENV['AWS_REGION'] %>
    secret_access_key: <%= ENV['AWS_SECRET_ACCESS_KEY'] %>
    concurrency: 25
    delay: 0
    queues:
    - development_mailers

    我怎样才能弄清楚为什么 Shoryuken 没有检索和处理这些消息?

    (我已经发布了 this issue to GitHub ,但在没有收到回复后重新发布在这里)。

    最佳答案

    结果是 YAML 格式不正确。 queues不应该低于 aws但处于同一水平。这是正确的版本:

    aws:
    access_key_id: <%= ENV['AWS_ACCESS_KEY_ID'] %>
    receive_message:
    attribute_names:
    - ApproximateReceiveCount
    - SentTimestamp
    region: <%= ENV['AWS_REGION'] %>
    secret_access_key: <%= ENV['AWS_SECRET_ACCESS_KEY'] %>
    concurrency: 25
    delay: 0
    queues:
    - development_mailers

    关于ruby-on-rails - 在 Rails 项目中设置 Shoryuken、Active Job 和 Amazon SQS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39783398/

    30 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com