2015-11-12 7 views
8

हम अपने उल्का ऐप पर बहुत धीमे लॉगिन प्रतिक्रिया समय देख रहे हैं। लोड 200 लॉगिन/मिनट दृष्टिकोण के रूप में observeChanges कॉल काफी धीमी हो: Login methodलॉग इन के दौरान लंबे समय से निरीक्षण करें कॉल

ObserveChanges large

रूप loginWith < सेवा > उल्का कोर का हिस्सा है, इस समस्या को डिबग करने के लिए मुश्किल लगता है। ध्यान दें कि ऐप 100-200 लॉग इन/मिनट दूसरा हिट करने के बाद ही इन धीमी प्रतिक्रिया के समय को देखता है। जब ऐप पर कम भार होता है तो निरीक्षण करें केवल कुछ एमएस लें। कोई जानकारी है कि इसका कारण क्या हो सकता है?

संपादित करें: धीमी गति से आइटम के साथ एक स्टैक ट्रेस जोड़ी का विस्तार: ObserveChanges large

+0

मैंने हमेशा सोचा है कि प्रतिक्रियाशील लॉगिन सेवा कॉन्फ़िगरेशन एक बड़े उत्पादन ऐप के लिए अधिक था। हालांकि, मुझे यकीन नहीं है कि इसे –

+1

200 लॉग इन/सेकंड का उपयोग करने से कैसे बचें? वाह। –

+0

क्या आप उनमें से प्रत्येक का विस्तार कर सकते हैं और "अधिक दिखाएं" के अंतर्गत विवरण पोस्ट कर सकते हैं? साथ ही, आपके पर्यवेक्षक का पुन: उपयोग इस तरह दिखता है? –

उत्तर

1

अपने स्क्रीनशॉट को देखते हुए, ऐसा लगता है कि आप अलग-अलग उपयोगकर्ता विवरण लौटाता के लिए एक कस्टम प्रकाशन परिभाषित किया है। एक समस्या निवारण चरण के रूप में, यदि आप प्रतिक्रियाशील जा रहा है कि इस प्रश्न में कोई दिलचस्पी नहीं कर रहे हैं, को निष्क्रिय करने प्रतिक्रियात्मकता का प्रयास करें:

Meteor.publish('currentUser', function() { 
    return Users.find({ 
    _id: this.userId 
    }, { 
    fields: { 
     emails: 1, 
     registered_emails: 1, 
     services: 1, 
     isPremium: 1, 
    }, 
    reactive: false, 
    }); 
}); 

बातें आगे ले करने के लिए (आप चीजों प्रतिक्रियाशील रखना चाहते हैं), तो आपको Meteor 1.3's poll/diff tweaking capabilities लाभ में देखना चाहते हो सकता है , यह देखने के लिए कि क्या इससे कोई फर्क पड़ता है। तो अपने उपयोगकर्ता प्रकाशन के लिए ओप्लॉग पर भरोसा करने के बजाय, उस विशिष्ट क्वेरी के लिए इसे अक्षम करने का प्रयास करें, और pollingIntervalMs और pollingThrottleMs विकल्पों को ट्विक करें। तो कुछ ऐसा:

Meteor.publish('currentUser', function() { 
    return Users.find({ 
    _id: this.userId 
    }, { 
    fields: { 
     emails: 1, 
     registered_emails: 1, 
     services: 1, 
     isPremium: 1, 
    } 
    }, { 
    disableOplog: true, 
    pollingThrottleMs: 10000, 
    pollingIntervalMs: 10000, 
    }); 
}); 
संबंधित मुद्दे