2011-10-12 11 views
5

मुझे उच्च ट्रैफ़िक रेल एप्लिकेशन के लिए होस्टिंग से संबंधित एक प्रश्न है। बात यह है कि मेरे पास रेल अनुप्रयोगों पर रुबी के साथ 3/4 साल का अनुभव है लेकिन मेरे पास पहले कभी उच्च ट्रैफिक वेबसाइट नहीं थी। मैं वास्तव में उत्साहित हूं क्योंकि यह मेरे और मेरे सहकर्मी के लिए "अगला स्तर" है। बात यह है कि हमें "उच्च यातायात" को संभालने के लिए रेल आवेदन के साथ अनुभव नहीं है, सबसे पहले मुझे इस मामले में "उच्च यातायात" परिभाषित करने दें।"उच्च" यातायात रेल अनुप्रयोग के लिए होस्टिंग प्रश्न

हम अग्रणी डच दूरसंचार प्रदाताओं और लगभग एक के लिए एक रेल एप्लिकेशन विकसित कर रहे। प्रति दिन आगंतुक 400,000 उपयोगकर्ता होंगे। हम रूबी 1.9.2 और रेल 3.1 में प्रोग्रामिंग कर रहे हैं। हम प्रमाणीकरण हैंडलिंग के लिए तैयार कर रहे हैं। लेकिन हम इस एप्लिकेशन को होस्ट करने के लिए एक विश्वसनीय पार्टी की तलाश में हैं। हम हेरोकू को देख रहे हैं, लेकिन मेरे पास कोई सुराग नहीं है जो मुझे चाहिए और मुझे कितना श्रमिक, डिनो और/या समर्पित डेटाबेस चाहिए। हमें फिल्मों को स्ट्रीम करने की जरूरत है, और हम उन्हें अमेज़ॅन एस 3 बाल्टी पर होस्ट करने की योजना बना रहे हैं।

तो बात मैं Heroku और/या अन्य पेशेवर और विश्वसनीय दलों के विषय में सलाह के लिए देख रहा हूँ है। क्या रेल चीजों के संबंध में मुझे विचार करने की ज़रूरत है?

धन्यवाद!

उत्तर

9

यह लगभग dynos के संदर्भ में इस पर काम करने के लिए काफी आसान है।

एक dyno तो अपने पेज 200 मि.से लेता है, तो आप रेंडर करने के लिए प्रति सेकंड 5 पृष्ठों को प्रस्तुत कर सकते हैं एकल लड़ी है। आपको यह पता लगाना होगा कि 400,000 उपयोगकर्ता प्रति सेकंड कितने पेज बनाएंगे। फिर आप जानते हैं कि प्रति सेकंड कितने पेज अनुरोध किए जा रहे हैं और एक एकल डिनो कैसे संभाल सकता है। इसलिए जब तक आप प्रति सेकंड आंकड़े अपने उपयोगकर्ता अनुरोधों को पूरा नहीं करेंगे तब तक आप केवल डिनो गिनती बढ़ाएंगे।

जैसे 1 dyno @ 200 मि.से = दूसरा 2 dynos प्रति 5 पृष्ठों @ 200 मि.से = 10 पृष्ठों प्रति सेकंड

आदि आदि यह केवल एक गेंद पार्क आंकड़ा के रूप में वहाँ डीबी प्रदर्शन आदि जैसे अन्य कारकों होने जा रहे हैं, लेकिन बाकी आश्वासन दिया है कि हेरोकू इस प्रकार के परिदृश्य के लिए उपयुक्त है क्योंकि यह इतना आसान है इसलिए डाल के माध्यम से बढ़ने के लिए और अधिक डायनो जोड़ें।

आप जहां एक तीसरी पार्टी उस समय प्रतिक्रिया और कतारों से निपटने के लिए समय लग सकता है अगर आपके आवेदन उन्हें का उपयोग करता है किसी भी लंबे चल घटना, जैसे ईमेल आदि भेजने के लिए कार्यकर्ताओं का उपयोग करने की आवश्यकता होगी।

एक बार जब आप 20 जीबी डेटाबेस पर जाते हैं तो आपको एक समर्पित डेटाबेस का उपयोग करने की आवश्यकता होती है और यह क्लाइंट से लगता है कि $ 200 प्रति माह स्टार्टर डीबी उन्हें होस्टिंग लागतों के ट्रेसम में पसीना नहीं जा रहा है।

क्या मुझे कुछ याद आया? अगर मैं वापस 1 dyno साथ

+0

, मुझे करने के लिए मिलता किया आप एक वेब या एक कार्यकर्ता dyno मतलब है? और एक कार्यकर्ता Dyno क्या करता है? क्या मैं इसे पेपरक्लिप अपलोड प्रक्रियाओं और rmagick/imagemagick फोटो मैनिपुलेशन के रूप में देख सकता हूं? –

+1

तो यह थोड़ा उलझन में है। यह dynos (वेब ​​के लिए) और श्रमिक (पृष्ठभूमि नौकरियों के लिए) होता था। नए स्टैक 'सीडर' पर आपके पास अभी प्रक्रियाएं हैं। किसी कार्यकर्ता को पृष्ठभूमि में किए जा सकने वाले किसी भी चीज़ के लिए इस्तेमाल किया जाना चाहिए या लंबे समय तक लगने की संभावना है। यदि आप वेब पेज के समान अनुरोध में छवियों का आकार बदलने जैसी चीजें नहीं हैं तो इसका अर्थ यह होगा कि डायनो (या वेब प्रक्रिया) व्यस्त होने पर अन्य सामानों को संसाधित करने में असमर्थ है। तो आने वाले अनुरोधों में कतारबद्ध किया जाएगा और अंततः 30 सेकंड के भीतर प्रतिक्रिया प्राप्त नहीं होने पर उन्हें समाप्त कर दिया जाएगा। –

+0

आपकी मदद के लिए धन्यवाद! मुझे सुरक्षा से संबंधित एक और सवाल है। क्या ऐसी चीजें हैं जिनके बारे में मुझे सोचने की ज़रूरत है? क्या मुझे आईडी के यादृच्छिक और अप्रत्याशित बनाने की आवश्यकता है? और ऐसा करने का सबसे अच्छा तरीका क्या होगा ?! –

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