Проблема конфигурации с rabbitMQ и кроссовками - PullRequest
0 голосов
/ 10 сентября 2018

У меня есть два приложения sap1 и sap2, и я использую RabbitMQ (Bunny Gem) для обмена сообщениями, поэтому, работая с sap1, я создам сообщение и опубликую

sap1 (приложение для издателей).)

Gemfile

ruby 1.9.3
gem 'bunny', '~> 1.7', '>= 1.7.1'

publish.rb

def publish
    # Start a communication session with RabbitMQ
    connection = Bunny.new(:host => "123123", :vhost => "1231", :user => "123", :password => "Z7tN")
    connection.start

    # open a channel
    channel = connection.create_channel

    # declare a queue
    queue  = channel.queue("order-test", :durable => true)

    # publish a message to the default exchange which then gets routed to this queue
    values = { mac_id: 14123 }
    queue.publish(values.to_json)
    connection.close
end

sap2 (приложение для пользователя)

Gemfile

ruby 2
gem 'bunny'
gem 'sneakers'

config / initializers / sneakers.rb

require 'sneakers'
Sneakers.configure :connection => Bunny.new(:host => "123123", :vhost => "1231", :user => "123", :password => "Z7tN"), :timeout_job_after => 360

Rakefile

require 'sneakers/tasks'

app / worker / mac_worker.rb

class MacWorker
  include Sneakers::Worker
  from_queue "order-test"

  def work(params)
     # Calling the function
  end
end

и в консоли для прослушивания, делая это

 bundle exec rake sneakers:run

Здесь это работает, иногда я также получаю проблему с подключением, в потребительском приложении я не хочу использовать gem кроссовок, поэтому вместо этого я хочу прочитатьсообщение из очереди с кроликом и положить его в sidekiq, а также как автоматически слушать в sidekiq?

...