2016-11-14 6 views
12

का उपयोग कर मोंगोड के लिए कनेक्शन TImeout मेरे पास नोड, एक्सप्रेस और मोंगोडीबी पर चल रहा एक वेब एप्लिकेशन है। मैं ओडीएम के रूप में मोंगोज़ का उपयोग करता हूं। जब मैंने mongodb संस्करण v3.0.1 के साथ अपने एप्लिकेशन का परीक्षण किया तो यह ठीक चलता है और कोई त्रुटि नहीं फेंकता है। लेकिन जब मैं एक ही कोड v3.2.10 चलाता हूं तो मुझे कुछ समय बाद कनेक्शन टाइमआउट मिलता है।मोंगोड

मैं निम्नलिखित त्रुटि मिलती है:

Error: connection timeout at null.<anonymous> (/webapp/node_module/mongoose/lib/drivers/node-mongodb-native/connection.js:186:17) 

मैं स्थानीय MongoDB उदाहरण के लिए डाटाबेस कनेक्शन के लिए mongoose.connect का उपयोग करें। कनेक्शन के रास्ते में कुछ भी बदल गया है?

+0

'नल' पर कनेक्शन टाइमआउट मुझे संदेह करता है कि उचित बंदरगाह संख्या mongoose के कनेक्शन.जेएस मॉड्यूल में नहीं जा रही है - क्या आपने इसे माना है? – BenWS

+0

यह कुछ समय के लिए ठीक रन जुड़ाव जोड़ता है। तो मुझे लगता है कि कनेक्शन ठीक काम करता है लेकिन यह त्रुटि 20-30 मिनट के बाद आता है। – Dan

+0

@Dan मुझे एक ही समस्या है। यदि आप इसे हल कर सकते हैं, तो मुझे बताएं कि कैसे। – slorenzo

उत्तर

13

मुझे कुछ समय पहले यह समस्या थी। यह सब इस बात पर निर्भर करता है कि mongoose और mongodb-core का कौन सा संस्करण आप उपयोग कर रहे हैं। इस समय, आप निम्न पैरामीटर निर्दिष्ट करने के लिए है:, बस कल

mongoose.connect("mongodb://user:[email protected]/db", { 
    server: { 
    socketOptions: { 
     socketTimeoutMS: 0, 
     connectionTimeout: 0 
    } 
    } 
}); 

हालांकि, सही पैरामीटर .. जहां

mongoose.connect("mongodb://user:[email protected]/db", { 
    server: { 
    socketOptions: { 
     socketTimeoutMS: 0, 
     connectTimeoutMS: 0 
    } 
    } 
}); 

मैं वास्तव में क्या अब और विश्वास करने के लिए पता नहीं है

+0

यह भी देखें: https://github.com/christkv/mongodb-core/issues/153 एक समस्या है नवीनतम mongodb-core में टाइमआउट सेट करना। – DBellavista

+0

मैं इस त्रुटि को भी अनदेखा कर रहा था लेकिन यह जानना अच्छा था। – Volem

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