2016-02-11 8 views
11

नीचे कमांड केवल चैनल सूची देता है।रेडिस कमांड को सब्सक्राइब करने वाले सभी ग्राहकों को सूचीबद्ध करने के लिए रेडिस कमांड

127.0.0.1:6379> PUBSUB CHANNELS 
1) "mychannel" 
2) "mychanne2" 

कैसे CHANNEL1 या CHANNEL2 पर सदस्यता ली ग्राहकों की सूची पर।?

भी

मैंने पाया redis की तरह कुछ के साथ एक विशेष चैनल

+0

किसी भी प्रतिक्रिया ...? –

उत्तर

2

के सभी ग्राहकों मैं इस लक्ष्य को हासिल कर सकते हैं सूची कमान din't:

redis_client.multi().client(['list']).exec(function(err, results) { 
    var pairs = results[0].split(' '); 
    pairs.forEach(function(pair){ 
    var kv = pair.split('='); 
    if (kv[0] == 'name' && kv[1] == constants.REDIS_SUBSCRIBER_NAME) 
     found = true; 
    }); 
    if (found) // some logic 
    else // some logic 
}); 
+0

यदि मुझे 'name' &&' constants.REDIS_SUBSCRIBER_NAME' –

+0

के स्थान पर स्थिति में रखा जाना चाहिए, तो मुझे ('redis') की आवश्यकता है, फिर redis_client क्लाइंट बनाया, फिर इस स्क्रिप्ट को नोड में निकाल दिया और कहा कि 'स्थिरांक परिभाषित नहीं किया गया है' –

+0

यह एक ऐसा नाम है जिसे आप अपने ग्राहक ग्राहक को सेट कर सकते हैं। 'customerber.client ('setname', constants.REDIS_SUBSCRIBER_NAME);'। ** अपना नाम ** का प्रयोग करें। –

संबंधित मुद्दे