Class: MQBench::AMQP
Constant Summary
Constants inherited from Client
Instance Method Summary collapse
-
#initialize(args) ⇒ AMQP
constructor
A new instance of AMQP.
- #recv_msg ⇒ Object
- #send_msg ⇒ Object
Constructor Details
#initialize(args) ⇒ AMQP
Returns a new instance of AMQP.
5 6 7 8 9 10 11 12 13 14 |
# File 'lib/mqbench/amqp.rb', line 5 def initialize(args) @port = 5672 @user = 'guest' @pass = 'guest' super(args) @broker = Bunny.new(:host => @host, :port => @port, :user => @user, :pass => @pass) @broker.start end |
Instance Method Details
#recv_msg ⇒ Object
27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 |
# File 'lib/mqbench/amqp.rb', line 27 def recv_msg ch = @broker.create_channel q = ch.queue(QNAME) cnt = 0 q.subscribe(:block => true) do |delivery_info, _, _| cnt += 1 if cnt >= @count delivery_info.consumer.cancel break end end ch.close end |
#send_msg ⇒ Object
16 17 18 19 20 21 22 23 24 25 |
# File 'lib/mqbench/amqp.rb', line 16 def send_msg ch = @broker.create_channel q = ch.queue(QNAME) (1..@count).each do |_| q.publish('a' * @size) end ch.close end |