Redis
 sql >> डेटाबेस >  >> NoSQL >> Redis

रेडिस कमांड का एसिंक्स निष्पादन

मुझे लगता है कि आप जिस asyncjs मॉड्यूल का उपयोग करते हैं वह एक दस्तावेज है:https://github.com/fjakobs/async.js

आपके कोड में:

  • सूची() एक जनरेटर है। यह सरणी को asyncjs द्वारा पुनरावृत्त करने की अनुमति देता है। सरणी मानों की एक सरणी है।
  • call() एक मैपर है जो कॉल करता है प्रत्येक आइटम। इसलिए आइटम को कॉल करने योग्य होना चाहिए (यानी उन्हें कॉलबैक होना चाहिए)।
  • end() एक समाप्ति अंत बिंदु है, जिसे पुनरावृत्ति समाप्त होने पर कहा जाता है। एक पैरामीटर के रूप में, आपको केवल अनुक्रम का अंतिम मान मिलता है (संपूर्ण अनुक्रम नहीं)।

आपको "[TypeError:Object true की कोई विधि नहीं है 'लागू करें'] "त्रुटि क्योंकि आपके द्वारा बनाई गई सूची कॉलबैक की सूची नहीं है। यह मूल्यों की एक सूची है।

यहां कुछ कोड दिया गया है जो आपको वह करना चाहिए जो आप चाहते हैं:

var redis = require("redis");
var client = redis.createClient();
var async = require("asyncjs");

function main() {

  var siteId = 1;

  async
    .list(['x','y','z'])
    .map( function (item,next) {
      client.hincrby('traffic:' + siteId, item, 1, function (err,res) {
        next(err,res)
      })
    })
    .toArray( function(err,res) {
      console.log(err); 
      console.log(res); 
    });
}

main()

कृपया ध्यान दें कि यहां हम कॉल () के बजाय मानचित्र () और अंत () के बजाय toArray () का उपयोग करते हैं।




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. क्या Redis PostgreSQL जैसे डेटाबेस को लिख सकता है?

  2. नोड.जेएस में एक ही दो ऐप के लिए रेडिस डेटाबेस को कैसे अलग करें?

  3. कुबेरनेट्स एनएफएस भंडारण पीवी और पीवीसी का उपयोग कर

  4. मोंगोडीबी बनाम रेडिस बनाम कैसेंड्रा एक तेजी से लिखने, अस्थायी पंक्ति भंडारण समाधान के लिए

  5. Redis Stack Exchange पैटर्न द्वारा कुंजियाँ कैसे हटाएं या प्राप्त करें