2008-08-25 8 views
7

मैं अपनी पहली रूबी ऐप विकसित करने के लिए उत्सुक हूं, क्योंकि मेरी कंपनी ने अंत में आंतरिक रूप से इसका उपयोग आशीर्वाद दिया है।रूबी प्रदर्शन

सब कुछ मैंने रूबी के बारे में v1.8 तक पढ़ा है, प्रदर्शन के बारे में कुछ भी सकारात्मक नहीं कहा गया है, लेकिन मुझे संस्करण 1.9 के बारे में कुछ भी नहीं मिला है। आखिरी आंकड़े मैंने 1.8 के बारे में देखा था, यह सब कुछ के बारे में बस इतना धीमा था, इसलिए मुझे उम्मीद है कि इसे 1.9 में संबोधित किया गया था।

प्रदर्शन में काफी सुधार हुआ है? क्या कुछ ठोस चीजें हैं जो रूबी ऐप्स (या चीजों से बचने के लिए) के साथ सर्वोत्तम संभव स्तर पर प्रदर्शन को बनाए रखने के लिए की जा सकती हैं?

उत्तर

1

मैंने वास्तव में जेवीएम कार्यान्वयन, जेआरबी के बारे में वास्तव में अच्छी चीजों के प्रदर्शन को सुना है। पूरी तरह से अचूक, लेकिन शायद देखने लायक है।

भी देखें http://en.wikipedia.org/wiki/JRuby#Performance

8

http://www.rubychan.de/share/yarv_speedups.html पर 1.8 बनाम 1.9 के कुछ मानक हैं। कुल मिलाकर, ऐसा लगता है कि ज्यादातर मामलों में 1.9 बहुत तेज है।

2

मैटज़ रूबी 1.8.6 प्रदर्शन की बात आती है और 1.9 और जेआरबीई इसे गति देने के लिए बहुत धीमी है। लेकिन प्रदर्शन ऐसा नहीं है कि यह आपको वेब एप्लिकेशन में जो कुछ भी चाहिए, वह करने से रोक देगा। रेल साइटों पर कई बड़ी रूबी हैं जो "धीमी व्याख्या" भाषा के साथ ठीक है। जब आप वेब ऐप्स को स्केल करते हैं तो उस भाषा की गति से कहीं अधिक दबाव प्रदर्शन समस्याएं होती हैं जिनमें आप इसे लिख रहे हैं।

4

यदि स्केलेबिलिटी और प्रदर्शन आपके लिए वास्तव में महत्वपूर्ण हैं तो आप Ruby Enterprise Edition भी देख सकते हैं। यह रुबी दुभाषिया का एक कस्टम कार्यान्वयन है जिसे स्मृति आवंटन और कचरा संग्रह के बारे में बहुत बेहतर माना जाता है। मैंने सीधे जेआरबीई की तुलना में किसी भी उद्देश्य मीट्रिक को नहीं देखा है, लेकिन मैंने सुना है कि सभी अज्ञात सबूत बहुत अच्छे हैं।

यह उसी कंपनी से है जिसने Passenger (aka mod_rails) बनाया है, यदि आप JRuby मार्ग नहीं जाने का निर्णय लेते हैं तो आपको निश्चित रूप से रेल डिप्लॉयमेंट समाधान के रूप में जांच करनी चाहिए।

0

बाहर चेक एडिसन वेस्ले व्यावसायिक से "कुशल रूबी कोड लेखन":

http://safari.oreilly.com/9780321540034

मैं इस छोटे से काम में कुछ बहुत ही उपयोगी और रोचक अंतर्दृष्टि पाया। और यदि आप मुफ्त 10-दिवसीय परीक्षण के लिए साइन अप करते हैं तो आप इसे मुफ्त में पढ़ सकते हैं। (यह 50 पृष्ठों है और परीक्षण आप (AFAIR) 100 पृष्ठ दृश्यों हो जाता है।)

https://ssl.safaribooksonline.com/promo

0

मैं एक रूबी प्रोग्रामर नहीं हूँ, लेकिन मैं बहुत कसकर हाल ही में एक JRuby तैनाती में शामिल किया गया है और इस तरह कुछ निष्कर्ष आकर्षित कर सकते हैं । JRuby के प्रदर्शन से ज्यादा उम्मीद नहीं है। व्याख्या मोड में, यह सी रूबी की सीमा में कहीं कहीं लगता है। जेआईटी मोड तेज हो सकता है, लेकिन केवल सिद्धांत में। व्यावहारिक रूप से, हमने एक मध्यम आकार के सर्वर (दोहरी कोर, 8 जीबी रैम) पर एक निश्चित रूप से आकार वाले रेल अनुप्रयोग के लिए ग्लासफ़िश पर जेआईटी मोड की कोशिश की। और सच्चाई यह है कि, जेटिंग ने को अधिक समय लिया, ताकि सर्वर को पहले अनुरोध का जवाब देने से पहले 20-30 मिनट की आवश्यकता हो। मेमोरी उपयोग खगोलीय था, प्रोफाइलिंग काम नहीं कर सका क्योंकि पूरी प्रणाली संलग्न प्रोफाइलर के साथ रुक गई थी।

नीचे पंक्ति: जेआरबीई की योग्यता (मल्टीथ्रेडिंग, ठोस मंच, आसान जावा एकीकरण) है, लेकिन यह बताया गया है कि व्याख्या मोड एकमात्र तरीका है जो हमारे लिए अभ्यास में काम करता है, यह अपेक्षाकृत बेहतर प्रदर्शन-योग्य होने की उम्मीद नहीं की जा सकती है सी रूबी

-1

मैं दूसरा यात्री के उपयोग की सिफारिश करता हूं - यह रेल अनुप्रयोगों की तैनाती और प्रबंधन को छोटा बनाता है

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