मैं हालांकि हम सिर्फ यह webrick या संकर जाति काजब हम रेल ऐप को तैनात करते हैं तो हमें अपाचे सर्वर की आवश्यकता क्यों होती है?
उत्तर
अधिकांश रूबी एप्लिकेशन सर्वर केवल एक रूबी प्रक्रिया चलाएंगे (और रुबी के पास एक वैश्विक दुभाषिया लॉक है जो बहुसंख्यक को काफी व्यर्थ बनाता है), जिसका अर्थ है कि यह केवल एक ही समय में एक अनुरोध ही प्रदान कर सकता है। कम से कम कहने के लिए, यह आपको बहुत अच्छा प्रदर्शन नहीं देगा।
इसके चार तरीके हैं: या तो आप कई रूबी एप्लिकेशन सर्वर चलाते हैं और लोड बैलेंसर या उनके सामने रिवर्स प्रॉक्सी डालते हैं, उदा। मॉन्गल्स या थिन सर्वर के एक पैक के सामने Nginx या Apache (आपके द्वारा चलाए जाने वाले प्रक्रियाओं की संख्या उन अनुरोधों की संख्या को दर्शाती है जिन्हें आप समानांतर में संभालने में सक्षम होंगे)। या आप पैसेंजर चलाते हैं, जो एक अपाचे या निजिनक्स मॉड्यूल है जो लोड के परिवर्तन के रूप में गतिशील रूप से बढ़ने और घटने वाले अनुप्रयोगों के पूल का प्रबंधन करता है। पहला विकल्प आपको अधिक कॉन्फ़िगरेशन विकल्प देता है, लेकिन दूसरा विकल्प प्रबंधित करना आसान है। आप जो भी चाहते हैं वह आपके उपयोग के मामले पर निर्भर करता है।
निश्चित रूप से अन्य समाधान भी हैं, लेकिन वे अधिक विशिष्ट उपयोग मामलों के लिए हैं। उदाहरण के लिए, आप एक बहुत ही कुशल आवेदन लिख सकते हैं और इसे थिन के साथ तैनात कर सकते हैं - लेकिन इसके लिए आपको एक ईवेंट संचालित एप्लिकेशन लिखना आवश्यक है। आप रेल ऐप को तैनात नहीं कर सकते हैं और उसी प्रदर्शन की उम्मीद कर सकते हैं।
साथ आप तकनीकी रूप से कर सकते हैं, को तैनात सकता है, लेकिन तुम नहीं आमतौर पर चाहते हैं कि जब सीएसएस या छवि स्थिर फ़ाइलों की सेवा क्योंकि उस भूमि के ऊपर का एक उचित सा लागू होगा।
फ़्यूज़न यात्री ने अपाचे और nginx के साथ रेल होस्टिंग की अनुमति देने से पहले, रेल ऐप को तैनात करना डरावना और मुश्किल था। अपाचे एक बहुत परिपक्व वेब सर्वर है जो आसानी से स्केल करता है और कई जरूरतों को पूरा करने के लिए विन्यास योग्य है। (nginx परिपक्व नहीं है लेकिन बहुत ही कुशल, बहुत विन्यास योग्य और रेल होस्टिंग के लिए अपाचे के लिए एक शानदार विकल्प है।) वेब्रिक और मोंगेल विकास के लिए बहुत अच्छे हैं, लेकिन जब तक कि आप एक विशेषज्ञ नहीं हैं, उन्हें उत्पादन के उपयोग के लिए सेट करना मुश्किल है ।
अपाचे को शामिल किए बिना रेल ऐप को तैनात करने के कई तरीके हैं, लेकिन अपाचे सबसे लोकप्रिय सर्वर है और सबसे स्थिर और स्केलेबल के बीच सबसे परिपक्व सर्वर है। WEBrick और Mongrel दोनों की अपनी योग्यता है, लेकिन अपाचे वेब सर्वरों के लिए डिफ़ॉल्ट धारणा है और अधिकांश मामलों में कम से कम प्रतिरोध का मार्ग है।
- 1. जब हमें एक से अधिक EntityManager की आवश्यकता होती है?
- 2. जब हमें कोई विनाशक नहीं है तो हम SuppressFinalize को क्यों कॉल कर सकते हैं
- 3. पायथन में, हमें रीडलाइन() की आवश्यकता क्यों होती है जब हम फ़ाइल संभाल पर फिर से सक्रिय हो सकते हैं?
- 4. जब हम टेक्स्ट-ट्रांसफॉर्म: अपरकेस का उपयोग करते हैं तो आईई 7 को ईओटी फोंट को लोअरकेस ग्लाइफ्स को शामिल करने की आवश्यकता क्यों होती है?
- 5. जब जेएसपी बदल जाता है तो टोमकैट को पुनरारंभ करने की आवश्यकता नहीं होती है
- 6. हमें लक्ष्य नामस्थान की आवश्यकता क्यों है?
- 7. . हमें System.gc(); को कॉल करने की आवश्यकता क्यों है ??
- 8. जब JsonObject की चाबियाँ पुनरावृत्त होती हैं तो वे सर्वर
- 9. हमें संरचना की आवश्यकता क्यों है? (सी #)
- 10. हमें सी # प्रतिनिधियों की आवश्यकता क्यों है
- 11. हमें सी ++ में शुद्ध आभासी विनाशक की आवश्यकता क्यों है?
- 12. हमें "आउट" पैरामीटर की आवश्यकता क्यों है?
- 13. हमें वेब-सॉकेट की आवश्यकता क्यों है?
- 14. हमें strdup() की आवश्यकता क्यों है?
- 15. हमें पाइथन आयात विवरणों की आवश्यकता कब होती है?
- 16. हमें फ़ील्ड टैग की आवश्यकता क्यों है?
- 17. हमें "हटाएं []" ऑपरेटर की आवश्यकता क्यों है?
- 18. क्यों एनएस में की आवश्यकता होती है समारोह की आवश्यकता होती है
- 19. घटनाओं को परिभाषित करते समय हमें "ईवेंट" कीवर्ड की आवश्यकता क्यों है?
- 20. हमें सजावटी पैटर्न की आवश्यकता कब होती है?
- 21. हम रिफैक्टर क्यों करते हैं?
- 22. हमें डिज़ाइन पैटर्न की आवश्यकता क्यों है
- 23. हमें यहां टाइपनाम की आवश्यकता क्यों है?
- 24. हमें क्यों जारी रखने की विधि की आवश्यकता है?
- 25. कन्स्ट्रक्टर, विनाशक और असाइनमेंट ऑपरेटर कॉपी करें। जब हमें उन सभी की आवश्यकता नहीं होती है?
- 26. हमें हडोप स्टैक में ज़ूकीपर की आवश्यकता क्यों है?
- 27. क्यों 'की आवश्यकता होती है' चाहिए पैकेज
- 28. हमें अभी भी जेनरेट कोड की आवश्यकता क्यों है?
- 29. हमें जावा में इंटरफेस की आवश्यकता क्यों है?
- 30. हम serialization का उपयोग क्यों करते हैं?