Использование AWS SQS с Ruby on Rails

#ruby-on-rails #ruby #amazon-web-services #amazon-sqs

#ruby-on-rails #ruby #amazon-веб-сервисы #amazon-sqs

Вопрос:

Я не могу найти ни одного примера использования сервиса Amazon AWS SQS в сочетании с Ruby on Rails.

Пожалуйста, кто-нибудь может предоставить простой, простой пример использования SQS для отправки электронной почты.

Комментарии:

1. для отправки электронной почты? SQS — это служба очередей, хотя, конечно, объекты, обрабатывающие очередь, могут делать что угодно с полученными результатами.

Ответ №1:

Вы можете проверить Shoryuken, он интегрирован с SQS и Rails (ActiveJob). Но вы также можете использовать его без Rails, в отдельном приложении Ruby.

Ответ №2:

Вы можете ознакомиться с этими примерами. Я взял это из 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