मैं मॉनिटर करना चाहता हूं कि node.js में इवेंट लूप के प्रत्येक भाग में कितना समय लगता है। हालांकि मैं इसे मापने का सबसे अच्छा तरीका अनिश्चित हूं। सबसे अच्छा तरीका है मैं इस तरह दिखता है के साथ आ सकता है:node.js में इवेंट लूप अवरुद्ध करने का आकलन और माप कैसे करें?
var interval = 500;
var interval = setInterval(function() {
var last = Date.now();
setImmediate(function() {
var delta = Date.now() - last;
if (delta > blockDelta) {
report("node.eventloop_blocked", delta);
}
});
}, interval);
मैं मूल रूप से एक setInterval
की देरी को देखकर घटना पाश रन टाइम अनुमान लगाते हैं। मैंने blocked नोड मॉड्यूल में एक ही दृष्टिकोण देखा है लेकिन यह गलत और भारी लगता है। क्या इस जानकारी को पाने का कोई बेहतर तरीका है?
अपडेट: setImmediate
का उपयोग करने के लिए कोड को बदलकर hapi.js.
[hapi.js लोग इसे समान तरीके से करते हैं] (https://github.com/hapijs/good/blob/ecd705719777af5810dc224001940205cfebd2eb/lib/process.js#L14-L21), और वे इस मूल्य की निगरानी कर रहे हैं लगातार, ऐसा लगता है कि यह आपकी सबसे सुरक्षित शर्त होगी। –
सूचक के लिए धन्यवाद। उनका उपयोग ओएस 'सेट इमीडिएट' भी बेहतर है। –