2015-09-14 38 views
1

我使用redis-rb和sidekiq。常規$訂閱方法效果很好,但我使用$ psubscribe時,像下面沒有響應:如何使用redis gem使用psubscribe?

ActiveJob剪斷:

$redis = Redis.new(:timeout => 0, :driver => :hiredis) 

$redis.psubscribe(".*") do |on| 
    on.message do |channel, msg| 
    puts msg 
    end 
end 

Redis的-CLI COMAND: 發佈 'ABC' '你好'

當我嘗試從測試文件的例子它沒有工作。 https://github.com/redis/redis-rb/blob/98e3e7a516fc9b4609bc8ab482605f835a4de621/test/publish_subscribe_test.rb 你有什麼建議可能是什麼原因呢?

+0

是否有任何理由爲什麼你使用全局變量'$這裏redis'? – tadman

+0

我是新來的軌道,但不知道$變量約定。我會研究它,但不認爲這是問題,因爲非常類似的代碼適用於redis.subscribe方法 – user1167937

+0

新的沒有問題!請注意,全局變量可能導致整個世界的麻煩,應該避免,除非沒有其他選擇。從PHP或Perl背景來看,您可能沒有意識到變量名稱中「$」的含義。 – tadman

回答