Ruby 非 Broker 模式跨进程消息队列

linjunhalida · February 09, 2015 · Last by est replied at February 09, 2015 · 2023 hits

任务:实现多个进程间的消息传递。可以用消息队列,共享内存,Signal,Pipe 等方式实现。

我们可以用 Redis 等第三方工具来做,但是有没有一种不需要单独跑一个 Broker 的方式来做?比如:

q = InterProcessQueue.new

3.times.each do
  Process.new do
    while
      sleep 1
      cmd = q.get
      work(cmd)
    end
  end
end

有。zeromq。点对点的。无中间 broker。

如果有 redis 用 redis 的 PUB/SUB 就好。

You need to Sign in before reply, if you don't have an account, please Sign up first.