2009-11-16 4 views
10

मैं आईटी कंपनी मैं के लिए काम का एक ग्राहक के लिए एक परियोजना पर काम कर रहा हूँ और मुझे विश्वास है कि रेल इसके लिए एकदम सही है हूँ। मेरे पास अगले दिन या तो एक बैठक है, जहां मुझे डर है कि मैं "रेल क्यों?" के साथ बमबारी करने जा रहा हूं। प्रश्न टाइप करें, और इसमें कोई संदेह नहीं है कि "रेल स्केल नहीं करता है" जैसे रेलवे का पूरा समूह, "रेल सिर्फ एक सीएमएस है" और हजारों अन्य मिथकों को रेल पर रूबी के बारे में लगता है।बस्टिंग रूबी

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

कुछ Googling बाद मैं this blog post पाया जो वास्तव में कुछ ऐसी बातें मैं यहाँ मुक़ाबला करना चाहते हैं। डेविड हाइनेमेयर हांससन पोस्ट में कहते हैं:

तो मैंने सोचा कि यह समय के बारे में सीधे निराधार भय, अनिश्चितता, और संदेह के एक नंबर पर रिकॉर्ड बनाया होगा। मैं उस समय मिथकों के माध्यम से जा रहा हूं और आपको दिखा रहा हूं कि वे वास्तव में क्यों सही नहीं हैं।

यह वास्तव में आप कि आप रेल का उपयोग करना चाहिए समझाने के लिए नहीं है। केवल आप यह विकल्प बना सकते हैं। लेकिन आपको तथ्यों को देने के लिए ताकि आप अपना खुद का सूचित निर्णय ले सकें। एक जो नहीं है, कई मिथकों में फ़्लोटिंग की स्थापना की गई है।

के स्पष्ट करते हैं!

+8

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

+1

क्योंकि एक भी सही उत्तर नहीं हो सकता है, शायद इसे एक समुदाय विकी बनाओ। –

+0

मैं मानता हूं कि यह पूरी तरह से उद्देश्य नहीं है - और यह कि एक भी जवाब नहीं है (इसलिए मैंने एक समुदाय विकी बना दिया है) - लेकिन यह सीखने के बारे में और अधिक है कि रेल के बारे में क्या असत्य हैं, क्योंकि किसी भी तर्क के बारे में मैं क्लाइंट से * नहीं * उपयोग कर रहा हूं रेल, एक अच्छी तरह से शोध बिंदु से आने वाला नहीं है। मैं अपने आप को प्रयोग करने के खिलाफ अजीब या "निर्मित" तर्कों के खिलाफ खुद को बांटने की कोशिश कर रहा हूं, न कि दूसरी तरफ। – Ash

उत्तर

6

मिथक: "रूबी ऑन रेल्स पैमाने पर नहीं है"

बस्ट: एक विशिष्ट, जवाबदेह सवाल नहीं है यही कारण है कि। कृपया स्पष्ट करें।

यह कहकर कि जो भी तकनीक "स्केल नहीं करती" बहुत पेशेवर और बहुत उद्यमी लगता है - लेकिन यह एक स्पष्ट सवाल नहीं है। यह अज्ञात/अप्रमाणित रूप से खारिज करने का सिर्फ आलसी तरीका है, मैं स्पष्टीकरण के लिए पूछूंगा:

"स्केल 'से आपका क्या मतलब है? और आप इस समय इसे कैसे मापते हैं?"

यह अर्थ हो सकता है:

  • अधिकतम उपयोगकर्ता सत्र
  • औसत प्रतिक्रिया समय दिया लोड
  • एक निश्चित समय में प्रति सर्वर दी समवर्ती परिदृश्यों की प्रवाह क्षमता।
  • ... परियोजना का आयोजन करने में कठिनाइयों, इसलिए डेवलपर्स की एक बड़ी टीम इस पर काम कर सकती है।

"स्केल" से निपटने के कई तरीके हैं लेकिन जब तक आप नहीं जानते कि आप किसके साथ काम कर रहे हैं, यह हमेशा स्पष्ट नहीं है कि इसके बारे में क्या करना है।

वहाँ माणिक आधारित समाधान का भार, एचटीएमएल

  • विभिन्न डेटाबेस भर में आवेदन
  • पूर्व कंप्यूटिंग काम है कि उपयोगकर्ताओं को
  • के बहुत धक्का के बीच साझा किया गया है sharding की

    • कैशिंग टुकड़े भी शामिल है एजेक्स/जावास्क्रिप्ट भूमि में दृश्य-प्रतिपादन कार्य बंद करें ताकि यह क्लाइंट
    • पर फ्रंट-एंड वेब सर्वर का उपयोग करके अधिक कुशलता से
    • पर होता है
    • बस अधिक हार्डवेयर का उपयोग करें (यानी। डेवलपर समय महंगा & हार्डवेयर कीमतों में गिरावट) है लेकिन इस दृष्टिकोण मांग
    • में वृद्धि की एक उथले दर पर निर्भर करता है कम सहभागी कर रहे हैं और हो रही अधिक बैच काम
    • माणिक में काम का ही हिस्सा कर - जैसे मौजूदा लीगेसी बैकएंड + एक कार्यात्मक प्रोग्रामिंग प्रणाली के माध्यम से दृश्यपटल, या हो सकता है लेन-देन रेल + दृश्यपटल रेल

    तो चैलेंजर "पैमाने" का एक विशेष अर्थ के साथ नहीं आ सकती तो यह एक वैध चिंता का विषय नहीं है। कैसे करना है पर कुछ ही विकल्प है और संभवत: -

    लेकिन अगर चैलेंजर के साथ कुछ विशिष्ट और मध्यम श्रेणी का किस प्रकार लाता है, तो मैं एक timeboxed, कील समाधान (http://c2.com/xp/SpikeSolution.html) कुछ संख्या के साथ वापस आने के लिए उपयोग करना चाहते हैं यह।

  • 4

    केवल परिप्रेक्ष्य ग्राहक समझता है, पैसे से तर्क बनाओ!

    दिखाएँ तुम कितनी देर तक लगता है कि यह जावा, JSP में बनाने के लिए ले जाएगा, या जो भी उनके मौजूदा तकनीक है, एक साथ इस तरह के डेवलपर्स प्राप्त करने के लिए आसान के रूप में पक्ष-विपक्ष के साथ। फिर, राज्य रूबी में timescales, सुनिश्चित करें के लिए कम विकास की लागत, लेकिन यह भी एक अलग प्रणाली तैनात करने के लिए हो रही व्यवस्थापक की लागत से किया जाएगा जो, संभवतः कठिन कर्मचारियों ने रेल पता है, आदि इसके अपने पैसे की भर्ती है, इसलिए उन्हें देने के लिए तथ्यों और उन्हें निर्णय लेने दें।

    विशिष्ट आलोचनाओं ऑन रेल्स एक कंपनी रूबी के खिलाफ हो सकता है अपने स्वयं के सिस्टम की तुलना में के जवाब में वहाँ कई कारणों से एक कंपनी को दे सकते हैं, उनमें से कुछ रूबी या रेल के लिए विशिष्ट नहीं है, जैसे कि वे पहले से ही कई जावा विकसित करता है घर में, या जावा में लिखे गए मौजूदा आधारभूत संरचना, जो जावा जैसी एक ही भाषा प्रणाली के साथ हमेशा उपयोग करना आसान होगा। रेल

    1) क्यों: वैसे भी, अपने विशिष्ट अंक जवाब देने के लिए? सरल, रेल वेब साइट बनाने के लिए "डिज़ाइन" है, और एक कुशल काम करता है।आप बैकअप लेना कुछ सांख्यिकीय प्राप्त (मैं कड़ी में आंकड़े यह नहीं कह रहा हूँ सही हैं लेकिन संख्या हमेशा एक ग्राहक प्रभावित करेगा)

    http://www.theserverside.com/news/thread.tss?thread_id=33120

    2) रेल पैमाने पर नहीं है

    http://trak3r.blogspot.com/2008/03/rails-doesnt-scale.html

    3) रेल सिर्फ एक सीएमएस है? वे एक सीएमएस तो Drupal की सिफारिश का निर्माण कर रहे हैं, तो

    रेल नहीं मुझे लगता है कि आप अपने पैरों पर सोचने के लिए जब आप अपने ग्राहकों के सवालों का जवाब देना होगा, और वे कोई है जो अन्य व्यवस्थाएं बस रेल से अलग समझते हैं चाहते हैं, एक तरह से सही नौकरी के लिए सही उपकरण का उपयोग करने जैसे

    +0

    कॉर्प प्रकारों के लिए धन बातचीत। +1 –

    +0

    यह "प्रश्न" की भावना से काफी कुछ नहीं है। जबकि आप वैध अंक बनाते हैं, बिल्कुल इसका मतलब नहीं था। – Ash

    1

    मिथक: रेल प्रोग्रामर पर एक अच्छी रूबी किराए पर लेना मुश्किल है।

    (वास्तव में, मैं इसे खराब नहीं कर सकते हैं, यह सिर्फ एक संभावित मिथक कौन कर सकते हैं, कृपया, इस एक दूसरे के जवाब को संपादित करने या बनाने की एक विचार है।)

    +0

    इसके बारे में क्या मुश्किल है? रेल डेवलपर्स की संख्या - या रेल डेवलपर्स की गुणवत्ता –

    2

    मिथक: रेल परिपक्व नहीं है इसके चारों ओर बनाए गए कठोर ओपन सोर्स लाइब्रेरीज़ की पर्याप्तता रखने के लिए, जिसे किसी को बड़े पैमाने पर प्रोजेक्ट को जल्दी और भरोसेमंद तरीके से खींचने की आवश्यकता होती है।

    बस्ट: वास्तव में, आरओआर समुदाय के लिए उपलब्ध रत्नों और प्लगइन का एक टन है, जिनमें से कई सक्रिय समुदाय द्वारा प्रयास किए गए और सही पाए गए हैं। न केवल संसाधन हैं, बल्कि वे 'मणि' और रेल के अंतर्निर्मित प्लगइन आर्किटेक्चर के साथ प्रबंधन करना आसान हैं। सबसे खराब स्थिति परिदृश्य: आपको वह सही मणि या प्लगइन नहीं मिल रहा है। यदि आप JRuby का उपयोग करते हैं तो उस स्थिति में आप आसानी से अपना खुद का लिख ​​सकते हैं या जावा दुनिया से उधार ले सकते हैं।