के साथ नोडजेज़ पर लोड परीक्षण बाधाएं मुझे पता नहीं चल सकता कि इस साइट पर बाधा का कारण क्या है, 400 उपयोगकर्ताओं के पहुंचने के बाद बहुत खराब प्रतिक्रिया समय। साइट नेटवर्क लोड बैलेंसिंग के साथ, एक इंस्टेंस समूह का उपयोग करके, Google कंप्यूट इंजन पर है। हमने परियोजना को सेलज के साथ बनाया है।
मैं Google कंटेनर इंजन के साथ क्यूबनेटेट का उपयोग करके लोड परीक्षण कर रहा हूं, locust.py स्क्रिप्ट चला रहा हूं।Google Compute Engine
परीक्षणों में से एक के लिए मुख्य परिणाम हैं:
RPS : 30
Spawn rate: 5 p/s
TOTALS USERS: 1000
AVG(res time): 27500!! (27,5 seconds)
प्रतिक्रिया समय शुरू में एक दूसरे के नीचे, बहुत अच्छा है, लेकिन जब यह लगभग 400 उपयोगकर्ताओं तक पहुँचने शुरू होता है प्रतिक्रिया समय बड़े पैमाने पर कूदने के लिए शुरू होता है।
मैं स्पष्ट कारक हैं जो कि प्रतिक्रिया समय को प्रभावित कर सकते का परीक्षण किया है, नीचे दिए गए परिणाम:
कंप्यूट इंजन उदाहरण (2 एक्स मानक-n2, 200GB डिस्क, राम: उदाहरण के प्रति 7.5gb):
Only about 20% cpu utilization used
Outgoing network bytes: 340k bytes/sec
Incoming network bytes: 190k bytes/sec
Disk operations: 1 op/sec
Memory: below 10%
MySQL:
Max_used_connections : 41 (below total possible)
Connection errors: 0
सभी MySQL के लिए अन्य परिणाम भी ठीक लगते हैं, बाधा उत्पन्न करने का कोई कारण नहीं है।
मैंने एक नई सैलज बनाई गई परियोजना के लिए एक ही परीक्षण की कोशिश की, और यह बेहतर रहा, लेकिन अभी भी भयानक परिणाम हुए, लगभग 2000 उपयोगकर्ताओं के लिए 5 सेकंड का समय था।
मुझे और क्या परीक्षण करना चाहिए? बाधा क्या हो सकती है?
यह आपके node.js कोड में होने की संभावना है। संभवतया कुछ सिंक्रोनस इवेंट लूप को अवरुद्ध कर रहा है जो आपके द्वारा अनुरोध/सेकंड को चलाने के रूप में विस्फोट करता है। इसे प्रोफाइल करने का प्रयास करें। – bbuckley123
धन्यवाद। मुझे बहुत से लोग यह कह रहे हैं कि globalAgent.maxSockets एक मुद्दा हो सकता है। वर्तमान डिफ़ॉल्ट 5 है। क्या यह कारण हो सकता है? @ bbuckley123 – cfl
डिफ़ॉल्ट वास्तव में अनंत है। कई नोड रिलीज़ के लिए यह तरीका रहा है: https://nodejs.org/api/http.html#http_agent_maxsockets – bbuckley123