2013-01-10 23 views
5

मुझे लगता है कि डिफ़ॉल्ट बिल्ला 7 थ्रेड पूल आकार 200.टॉमकैट डिफ़ॉल्ट थ्रेड पूल आकार इतना बड़ा क्यों है?

हो रहा है नोटिस लेकिन सामान्य सीपीयू 16 कोर है लगता है।

तो केवल 16 धागे paralleld

क्यों बिल्ला इतना धागे का उपयोग करता है क्रियान्वित किया जा सकता।

+0

आपका कंप्यूटर वर्तमान में दर्जनों प्रक्रियाओं/धागे चल रहा है। मुझे संदेह है कि इसमें 4 से अधिक "वास्तविक" निष्पादन धाराएं हैं और फिर भी सबकुछ "एक ही समय में चल सकता है"। यह [शेड्यूलिंग] के कारण है (http://en.wikipedia.org/wiki/Scheduling_ (कंप्यूटिंग)) आधुनिक ऑपरेटिंग सिस्टम में मिला है। –

+3

मुझे आंतरिक पता नहीं है, लेकिन वे धागे बस बिना किसी कीमत (पैर प्रिंट को छोड़कर) बैठ सकते हैं, और उनमें से एक सबसेट (आदर्श रूप से कोर गिनती के बराबर) निष्पादित कर रहे हैं। तो 200 का मतलब यह हो सकता है कि वे धागे को अवरुद्ध करने की अच्छी मात्रा की उम्मीद करते हैं। – GManNickG

+0

एक पारंपरिक रणनीति कई धागे आवंटित करना है जो ज्यादातर सीओयू काम के साथ इंटरमीस्ड आईओ काम करते हैं। यदि आप इस चार्ट को देखते हैं http://norvig.com/21-days.html#answers तो यूएस से यूरोप में एक पैकेट भेजते हुए बड़ी संख्या में सीपीयू चक्र होते हैं। ज्यादातर समय आईओओ को मेमोरी/डिस्क/नेटवर्क पर इंतजार करने में खर्च किया जाता है, इसलिए सैकड़ों धागे कोर साझा कर सकते हैं। नए सर्वर/ढांचे विभिन्न कार्यों के लिए अलग-अलग थ्रेड पूल का उपयोग करते हैं जैसे प्ले फ्रेमवर्क जो अनब्लॉकिंग कर रहा है http://www.playframework.com/documentation/2.1.0/TreadPools उनके कुछ थ्रेड पूल एक कोर प्रति कोर का उपयोग करते हैं क्योंकि आईओ नहीं और न ही – simbo1905

उत्तर

4

लंबे साल के लिए कई सिंगल कोर कंप्यूटर के आसपास किया गया है और एक "छद्म समानांतर" मोड में काम करता है चलाने के लिए, कि कहा, तुम 16 धागे असली समानांतर मोड में चल रहा है और छद्म साथ में चल रहे अन्य लोगों के हो सकता है सक्षम थे है ।

अधिक जानकारी के लिए इसे देखो: Parallel Computing

आपके प्रश्न का उत्तर करने के लिए निम्न सूत्र अनुरोध संसाधित करने में सहायता कर रहे हैं, उनमें से एक गुच्छा HTTP अनुरोध और अन्य लोग उपस्थित लिए इस्तेमाल किया जाएगा आवेदन तर्क बुला पर इस्तेमाल किया जाएगा ।

+0

अवरुद्ध क्या आपका मतलब है कि http अनुरोध के लिए थोड़ा सीपीयू उपयोग की आवश्यकता है, इसलिए सीपीयू को 'व्यस्त' बनाने के लिए टोमकैट अधिक धागे का उपयोग कर सकता है? – jilen

+0

प्रोसेसिंग नेटवर्क ट्रांसफर से तेज है, विशेष रूप से इंटरनेट पर इसलिए सीपीयू का उपयोग करने के लिए बहुत सारे आईओ समय हैं जो अन्यथा बर्बाद हो जाएंगे। –

0

अधिकांश वास्तविक जीवन वेब एप्लिकेशन एप्लिकेशन डेटा संग्रहीत करने के लिए डेटाबेस का उपयोग करते हैं और इसलिए डिस्क-गहन होते हैं। डिस्क को एक्सेस करने के लिए बहुत से थ्रेड डिस्क-थ्रैशिंग का कारण बन सकते हैं। इसलिए धागे की संख्या सीमित करना डेटाबेस के साथ एक वेब अनुप्रयोग पर समझ में आता है।

0

200 धागे के बीच, 16-कोर मशीन पर केवल 16 धागे चल रहे हैं। एक विशिष्ट वेब अनुप्रयोग का तर्क कुछ प्रकाश गणना और भारी डेटाबेस प्रश्नों को निष्पादित करना है। 200 धागे के बीच, केवल कुछ ही गणना कर रहे हैं और उनमें से अधिकांश डेटाबेस से प्रतिक्रियाओं की प्रतीक्षा कर रहे हैं।