用Ruby链接RabbitMQ

本文介绍如何使用 Ruby 和 AMQP 库实现简单消息队列系统,包括安装所需库、创建消费者和生产者程序,并演示了消息发送与接收的过程。

先安装一个库吧,没有这个库,那是肯定不行的。

$ gem install amqp

consumer

然后做一个读消息的程序

123456789101112131415161718192021
         
require 'amqp'
 
def run
config = {
:host => 'localhost'
}
AMQP . start ( config ) do | connection |
channel = AMQP : :Channel . new ( connection )
queue = channel . queue ( '' , :auto_delete => true )
exchange = channel . direct 'ex.direct'
queue . bind ( exchange , :routing_key => 'tasks' ) . subscribe do | headers , payload |
puts payload
end
stopper = Proc . new { connection . close { EventMachine . stop } }
Signal . trap "INT" , stopper
end
end
 
run
view raw consumer.rb This Gist brought to you by  GitHub.

producer

然后做一个发布消息的程序

123456789101112131415161718
         
require 'amqp'
 
def run
config = {
:host => 'localhost'
}
AMQP . start ( config ) do | connection , open_ok |
channel = AMQP : :Channel . new ( connection )
exchange = channel . direct 'ex.direct'
msg = 'Hello, world'
exchange . publish ( msg , :routing_key => 'tasks' ) do
puts "sent: #{ msg } "
connection . close { EventMachine . stop }
end
end
end
 
run
view raw producer.rb This Gist brought to you by  GitHub.

実行

先 ruby consumer.rb 打开读程序端


然后 ruby producer.rb 打开写程序端


你就会看到程序两端都出现hello world !!


这是最最简单的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值