2010-08-20 18 views
28
  1. क्या आप कृपया मुझे अधिकतम सीमा बताएं। भार परीक्षण करने के लिए जेएमटर 2.4 में धागे का उपयोग कर सकते हैं?जेएमटर अधिकतम। थ्रेड सीमा

  2. क्या सभी धागे को एक लूप में लेने या कम संख्या में लेने में कोई अंतर है। धागे के और समान संख्या प्राप्त करने के लिए लूप प्रारंभ करें। उपयोगकर्ताओं/धागे का?

उदाहरण:

No. of threads=500 
Ramp up=1000 
Loop=1 

चाहे वह

No. of threads=50 
Ramp up=100 
Loop=10 

रूप में ही है या वहाँ परिणाम के मामले में कोई अंतर है?

+4

अच्छा प्रश्न एक उत्तर का चयन करना चाहिए! – tgkprog

उत्तर

20
  1. धागे की अधिकतम संख्या कारकों में से एक बहुत से निर्धारित होता है, इस सवाल का जवाब https://stackoverflow.com/a/11922239/460802

  2. वहाँ आप क्या प्रस्ताव कर रहे हैं में एक बड़ा अंतर है देखते हैं।

    • "500 धागे, लूप 1" लूप को एक ही समय में 500 धागे का मतलब है।
    • "50 धागे, लूप 10" लूप दस बार करने वाले एक ही समय में केवल 50 धागे का मतलब है।

सिद्धांत रूप में आप परिणाम (500) की एक ही नंबर मिलता है, लेकिन आप एक बहुत अलग ढंग से सर्वर तक पहुंच गए हैं।

9

उपयोगकर्ताओं की अधिकतम संख्या आपके ओएस, मुफ्त रैम और कनेक्शन पर निर्भर करती है। Win XP एक ही समय में 3000 प्रक्रियाओं तक सीमित है। लिनक्स पर 3000 से अधिक है लेकिन मैं इतना नहीं करता हूं। सावधान रहें कि आप सर्वर का परीक्षण करते हैं और यदि आप अपनी मशीन पर 3000 धागे शुरू करते हैं तो बहुत सारे संसाधनों की आवश्यकता होती है और परीक्षण वास्तविक नहीं होगा। मैं प्रति मशीन अधिकतम 300 उपयोगकर्ताओं को शुरू करने के लिए किराया pref। यदि आप वितरित परीक्षण का उपयोग करने से उपयोगकर्ताओं की संख्या में वृद्धि करना चाहते हैं (डीओएस हमले के रूप में अधिक मशीन का उपयोग करें)। सिद्धांत में अनुरोध की एक ही संख्या है लेकिन समय जटिलता समान नहीं है।

5

1: बेशक यह जेएमटर चलाने वाली मशीन पर बहुत निर्भर करता है, लेकिन अगर माइलेज की गणना करता है तो मैं आपको कुछ संकेत दे सकता हूं। जेएमटर आपको एक ही बॉक्स में कई प्रक्रियाओं को चलाने की अनुमति देता है, और यह आम तौर पर प्रति जेएमटर उदाहरण के 200 धागे तक उत्पन्न करने के लिए काफी भरोसेमंद है। यदि आपको उससे अधिक की आवश्यकता है, तो मैं एकाधिक जेएमटर उदाहरणों का उपयोग करने की सलाह दूंगा। कुछ tweaking के साथ एक आधुनिक मशीन आसानी से 500 से 1000 धागे उत्पन्न कर सकते हैं। लिनक्स का उपयोग करने के लिए आपको शायद अधिकतम फ़ाइल डिस्क्रिप्टर (see here) बढ़ाने की आवश्यकता है।

यह जीयूआई के बिना जेएमटर चलाने में बहुत मदद करता है, बाद में प्रस्तुत की जाने वाली फ़ाइल में रिपोर्ट/ग्राफिक्स डेटा लिखता है। आपको अपनी नेटवर्किंग सीमाओं पर भी ध्यान देना होगा। जीबीपीएस नेटवर्क के भीतर कुछ हज़ारों अनुरोध उत्पन्न करने के लिए सर्वर के लिए यह आसान होगा, लेकिन 54 एमबीपीएस राउटर साझा करने वाला लैपटॉप अधिक सीमित होगा। अनुरोधों के आकार से सर्वर पर अपना वास्तविक कनेक्शन विभाजित करने का प्रयास करें, और फिर आपको पता चलेगा कि बैंडविड्थ आपको सीमित कर देगा या नहीं। जेएमटर की कॉन्फ़िगरेशन पर HTML प्रतिक्रिया में संदर्भित फ़ाइलों को डाउनलोड करने या नहीं करने के लिए विशेष ध्यान दें।

आशा है कि मैं मदद करने में सक्षम था।

2: यह ठीक है कि ब्लैकगैफ़ ने समझाया: "500 धागे, लूप 1" लूप को एक ही समय में 500 धागे का मतलब है। "50 धागे, लूप 10" लूप दस बार करने वाले एक ही समय में केवल 50 धागे का मतलब है।

0
  1. मुझे नहीं लगता कि आपकी मशीन इसे संभाल सकता है तो जेएमटर पर कोई थ्रेड सीमा है। परीक्षण का मूल विचार यह होना चाहिए कि, थ्रेड और प्रतीक्षा समय की स्विचिंग वास्तविक प्रदर्शन मीट्रिक को बहुत अधिक प्रभावित नहीं करेगी।

  2. दो मामलों के बीच बहुत अंतर है। पहले मामले में, सबसे खराब परिदृश्य, आपके पास 500 समवर्ती उपयोगकर्ता होंगे। दूसरे मामले में, समवर्ती उपयोगकर्ताओं की अधिकतम संख्या हो जाएगा 50. परिदृश्य 1 के लिए औसत समय परिदृश्य के लिए औसत समय की तुलना में बड़ा हो जाएगा 2.

5

यह एक परिदृश्य बनाने के बाद यहां फंस करने के लिए बहुत आम है और परीक्षण के मामलों, हमें जेएमटर का उपयोग करने की आवश्यकता है और हमें जेएमटर थ्रेड ग्रुप में कितने उपयोगकर्ताओं या धागे का उपयोग करने की अनुमति है, इस मूल्य को ठीक करना होगा। हम या तो हमारे लोड जनरेटर या हमारे जेएमटर उदाहरण को थ्रॉटल नहीं करना चाहते हैं। इसलिए मूल रूप से, दोनों मामलों में को ट्वीक करना आवश्यक है। अन्यथा, परीक्षण का आउटपुट बेकार होगा और हम अपने समय के घंटे खो देंगे।

  • JMeter है एक जावा उपकरण यह JVM के साथ चलता है -: तो हम जिन बातों पर विचार की जरूरत है। अधिकतम क्षमता प्राप्त करने के लिए, हम execution.First दौरान JMeter को अधिकतम संसाधन उपलब्ध कराने की आवश्यकता है, हम ढेर आकार (अंदर JMeter बिन निर्देशिका, हम jmeter.bat/श मिल)
HEAP=-Xms512m –Xmx512m 
बढ़ाने की आवश्यकता

इसका मतलब है कि डिफ़ॉल्ट आवंटित ढेर आकार न्यूनतम 512 एमबी, अधिकतम 512 एमबी है। इसे अपने पीसी कॉन्फ़िगरेशन के अनुसार कॉन्फ़िगर करें। ध्यान रखें, ओएस को कुछ स्मृति की भी आवश्यकता है, इसलिए आप सभी को भौतिक RAM आवंटित न करें।

  • फिर, स्मृति आवंटन दर

NEW=-XX:NewSize=128m -XX:MaxNewSize=512m

इसका मतलब यह है स्मृति इस दर पर बढ़ जाएगी जोड़ें। आपको सावधान रहना चाहिए, क्योंकि, यदि आपकी लोड पीढ़ी शुरुआत में बहुत अधिक है, तो इसे बढ़ाने की आवश्यकता हो सकती है। ध्यान रखें, यदि सीमा बहुत व्यापक है तो यह आपके हीप स्पेस को JVM के अंदर विभाजित कर देगा। यदि ऐसा है, तो कचरा कलेक्टर को साफ करने के लिए कड़ी मेहनत करने की आवश्यकता है।

  • जेएमटर जावा जीयूआई एप्लीकेशन है। इसमें गैर-जीयूआई संस्करण भी है जो कम संसाधन गहन (सीपीयू/रैम) है। यदि हम गैर-जीयूआई मोड में जेएमटर चलाते हैं, तो यह कम संसाधन का उपभोग करेगा और हम और अधिक थ्रेड चला सकते हैं।

  • सभी श्रोताओं को अक्षम करें: टेस्ट रन के दौरान। वे केवल डिबगिंग के लिए हैं और अपनी वांछित स्क्रिप्ट को डिज़ाइन करने के लिए उनका उपयोग करते हैं।

श्रोताओं लोड परीक्षण के दौरान अक्षम है या नहीं। उन्हें सक्षम करने से अतिरिक्त ओवरहेड्स का कारण बनता है, जो आपके परीक्षण के अधिक महत्वपूर्ण तत्वों द्वारा आवश्यक मूल्यवान संसाधनों का उपभोग करते हैं।

  • हमेशा अप-टू-डेट सॉफ्टवेयर उपयोग करने के लिए प्रयास करें। अपने जावा और जेएमटर को अद्यतन रखें।

  • यह न भूलें कि अनुरोध और प्रतिक्रिया शीर्षलेख संग्रह करने की बात आती है, तो दावा परिणाम और प्रतिक्रिया डेटा बहुत सारी स्मृति का उपभोग कर सकते हैं! तो इन मानों को जेएमटर पर स्टोर न करने का प्रयास करें जब तक कि यह बिल्कुल जरूरी न हो।

तो सारांश में, कोई श्रोताओं JMeter पटकथा में शामिल कर रहे हैं, चल JMeter सर्वर, नेटवर्क ओवरहेड/बाधाओं और JMeter स्क्रिप्ट के अंदर कोई निगरानी तो यहाँ अनुकूलित कर रहे हैं एक किसी न किसी गणना है:

The total number of concurrent user = (total allocable memory)/(Size of all requests)

आप अपने समवर्ती संख्या उपयोगकर्ता/धागा (सक्रिय सूत्र) का अनुमान लगाना केवल Ter में आपके लोड परिदृश्य के एमएस।

इसके अलावा, आप पर नजर रखने के लिए कि क्या आपके सर्वर Memory consumption, CPU usages80 नीचे% या नहीं चल रहे हैं की जरूरत है। यदि इन उपयोगों का 80% से अधिक उपयोग उन परीक्षणों को एक रिपोर्ट के रूप में अविश्वसनीय मानते हैं।

इन दो ब्लॉगों को बेहतर और अधिक विस्तृत समझने के लिए How many users JMeter can support? और 9 Easy Solutions for a JMeter Load Test “Out of Memory” Failure सहायता चाहिए।

+0

@Adnan द्वारा उत्तर सबसे अच्छा जवाब है), लेकिन एक एफवाईआई के रूप में मैंने एक पसीना तोड़ने के बिना एडब्ल्यूएस में एम 4.2xlarge पर 1000 समवर्ती धागे चलाए। –

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