将 AWS SQS 与 Ruby on Rails 结合使用

pin*_*ngu 6 ruby ruby-on-rails amazon-sqs amazon-web-services

我找不到有关如何将 Amazon AWS SQS 服务与 Ruby on Rails 结合使用的任何示例。

请有人提供一个使用 SQS 发送电子邮件的简单准系统示例。

Pab*_*ero 6

您可以查看Shoryuken,它与 SQS 和 Rails (ActiveJob) 集成。但是您也可以在独立的 Ruby 应用程序中使用它而不使用 Rails。


Nav*_*jay 4

您可以查看这些示例。我从 GitHub GIST - AWS SQS 示例中获取了此内容。

#!/usr/bin/env ruby

require 'yaml'
require 'aws-sdk'

config_file = File.join(File.dirname(__FILE__),"config.yml")
config = YAML.load(File.read(config_file))
AWS.config(config)

# http://rubydoc.info/github/amazonwebservices/aws-sdk-for-ruby/master/AWS/SQS

sqs = AWS::SQS.new
queue = sqs.queues.create("my_queue")

# http://rubydoc.info/github/amazonwebservices/aws-sdk-for-ruby/master/AWS/SQS/Queue

send = lambda { |name, queue|
  while true do
    queue.send_message("#{name}:#{Time.now.to_s}")
    sleep 1
  end
}

Thread.new { send.call("t1", queue) }
Thread.new { send.call("t2", queue) }
Thread.new { send.call("t3", queue) }

sleep 1000
Run Code Online (Sandbox Code Playgroud)