2010-02-05 8 views
8

मेरे पास एक ऐप विकसित करने का विकल्प है जो थ्रेडिंग (200 तक) पर भारी निर्भर करेगा। मुझे पता है कि मैं अन्य रूबी दुभाषियों का उपयोग थ्रेडिंग जैसे जेआरबी के लिए कर सकता हूं। लेकिन 2 चीजें हैं:क्या मुझे रूबी धागे का उपयोग करना चाहिए या थ्रेडिंग के लिए पूरी तरह रूबी का उपयोग नहीं करना चाहिए?

1) जर्बी अभी तक 1.9 का समर्थन नहीं करता है, इसलिए यह कोई नहीं है। क्या कोई अन्य गैर-हरा धागा दुभाषिया है जो कम से कम 1.9 का समर्थन करता है क्योंकि अगर मैं रूबी का उपयोग करता हूं तो यह मेरे लिए एक शर्त है।

2) यहां तक ​​कि एक दुभाषिया जैसे जरुबी का उपयोग करके, क्या मुझे वास्तव में सभ्य थ्रेड परफॉर्मेंस मिल जाएगा जो मैं जावा में प्राप्त कर सकता हूं? शायद मुझे इस एप्लिकेशन के लिए जावा का उपयोग करना चाहिए।

नोट: यह व्यक्तिपरक चर्चा का प्रयास नहीं है। यह केवल थ्रेड प्रदर्शन के बारे में सलाह के लिए है। इसके अलावा, यह जावा बनाम रुबी या उस प्रकृति के कुछ भी नहीं है। मैं रूबी के लिए नया हूं और अपने फायदे के लिए इसे साफ़ करने की उम्मीद कर रहा हूं, धन्यवाद।

+0

मैंने सोचा कि जेआरबी धागे सीधे जेवीएम धागे में मैप किए गए हैं। यदि यह सच है, भले ही आपका JRuby "1.9" नहीं है, तो इसे मूल धागे का उपयोग करना चाहिए (यदि आपका JVM मूल धागे का उपयोग करता है)। ओह, और क्या आप हमें एक विचार दे सकते हैं कि आपका आवेदन क्या कर रहा है? कभी-कभी ऐसे धागे के विकल्प होते हैं जिनके बारे में आपने सोचा नहीं होगा। –

+0

नेटवर्क I/O/Http। जेएमटर के समान। प्रत्येक धागे उस कारण से बनाया गया है। प्रदर्शन बहुत महत्वपूर्ण है। और इसलिए मुझे रूबी में प्रोग्राम करना पसंद है, अगर मैं इसे इस परियोजना के लिए करना चाहूंगा। – Zombies

+0

साइड इश्यू: 200 धागे? तो आपके पास 200 कोर मशीन है? ठंडा। –

उत्तर

6

आपको वास्तव में इसे बेंचमार्क करना चाहिए।

क्या आपके धागे एक साथ कई गणना कर रहे हैं? तो आपको शायद मूल धागे की आवश्यकता होगी। लेकिन अगर आप हर समय आईओ की प्रतीक्षा कर रहे हैं, तो शायद रूबी के हरे धागे ठीक हैं।

इस सलाह के साथ भी, आपको एक छोटा परीक्षण कार्यक्रम बनाना चाहिए और देखें कि सीधा तरीका (केवल रूबी 1.9 का उपयोग करके) काम करेगा।

+0

यदि मुझे कुछ समय मिल सकता है तो मैं परिणामों को वापस करने और पोस्ट करने की कोशिश करूंगा। – Zombies

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