पोर्ट बाइंडिंग http://12factor.net/port-binding पर 12 फैक्टर लेख में एक आवश्यकता है कि प्रत्येक ऐप स्वयं निहित हो और रनटाइम इंजेक्शन न हो। बिलाव। के लिए यह क्या कारण है ... माइक्रोस्कोप के लिए स्वयं निहित ऐप्स के फायदे क्या हैं?एक 12 फैक्टर ऐप स्वयं निहित क्यों होना चाहिए?
उत्तर
मुझे लगता है क्योंकि यह आपके ऐप को स्केल करने का समय आने पर आपको लचीलापन का एक बड़ा सौदा देता है। यदि आप टोमकैट का उपयोग करते हैं तो आपको अपने .war की प्रतिलिपि बनाना होगा और उसे किसी अन्य टोमकैट के अंदर छोड़ना होगा और फिर उनमें से किसी के लिए अपने अनुरोधों को संतुलित करना होगा।
इसके बजाय यदि आपके ऐप में स्वयं सर्वर http सर्वर है, तो आप केवल एक अन्य बंदरगाह में एक और उदाहरण चलाते हैं और उस टॉमकैट सामान को भूल जाते हैं। आपको अभी भी अपने ऐप उदाहरणों में से किसी एक को अपने अनुरोधों को संतुलित करना होगा, लेकिन अधिक सीधे आगे लगता है।
पोर्ट बाध्यकारी और स्वयं निहित ऐप्स के आसपास नियमों को समझने के लिए, Heroku या Deis जैसे 12-कारक ऐप्स चलाने के लिए डिज़ाइन किए गए प्लेटफॉर्म के परिप्रेक्ष्य से चीजों को देखने में मददगार है।
ये प्लेटफ़ॉर्म प्रक्रिया स्तर पर अनुप्रयोग स्केल कर रहे हैं। जब प्रक्रियाओं को बढ़ाया जाता है, तो मंच इन अतिरिक्त श्रमिकों को रूटिंग जाल के पीछे रखने की कोशिश करता है ताकि वे यातायात की सेवा शुरू कर सकें। यदि ऐप स्वयं निहित नहीं है और, उदाहरण के लिए, mod_jk
का उपयोग कर फ्रंट-एंड अपाचे सर्वर से कसकर जोड़ दिया गया है - अधिक पृथक कार्यकर्ता प्रक्रियाओं को चलाकर स्केल करना संभव नहीं है।
प्लेटफार्म स्तर पर "पोर्ट ब्रोकिंग" की समस्या को हल करने के लिए पोर्ट बाध्यकारी मौजूद है। यदि पोर्ट 80 पर सुनाई गई प्रत्येक एप्लिकेशन कर्मचारी वहां संघर्ष करेंगे। इसे हल करने के लिए, पोर्ट बाइंडिंग एक सम्मेलन है जिससे एप्लिकेशन पोर्ट को आवंटित पोर्ट पर सुनता है - और जिसे $PORT
पर्यावरण चर के रूप में पास किया जाता है। यह सुनिश्चित करता है कि) एप्लिकेशन कार्यकर्ता सही बंदरगाह पर सुनता है और बी) मंच जानता है कि उस कार्यकर्ता के लिए निर्धारित यातायात को रूट करना है।
- 1. 12 फैक्टर ऐप: Fluentd
- 2. एक स्वयं निहित जावाएफएक्स अनुप्रयोग (.exe)
- 3. क्या कक्षा में स्वयं का संग्रह होना चाहिए?
- 4. क्यों constexpr स्थिर होना चाहिए?
- 5. क्यों प्रतिनिधि स्थिर होना चाहिए?
- 6. मुख्य स्थिर क्यों होना चाहिए?
- 7. स्वयं निहित पर्ल 6 स्क्रिप्ट
- 8. स्वयं निहित पायथन अनुप्रयोगों का निर्माण
- 9. एक निश्चित आकार बफर (सरणी) असुरक्षित क्यों होना चाहिए?
- 10. मेरा वेब ऐप कितना लचीला होना चाहिए?
- 11. प्रति ऐप केवल एक इवेंटसोर्स ऑब्जेक्ट होना चाहिए?
- 12. फैक्टर
- 13. फैक्टर
- 14. निरर्थक वस्तु का मूल्य होना चाहिए - क्यों?
- 15. हैश टेबल: क्यों आकार प्रधान होना चाहिए?
- 16. एक विधि स्थिर होना चाहिए?
- 17. हेल्पर्स में एचटीएमएल क्यों नहीं होना चाहिए?
- 18. रेडक्स स्टोर क्यों क्रमबद्ध होना चाहिए?
- 19. यूनिक्स बाइनरी स्वयं निहित कैसे करें?
- 20. क्यों सी # ऑपरेटर अधिभार स्थिर होना चाहिए?
- 21. जावा बीन्स को धारावाहिक क्यों होना चाहिए?
- 22. कौन सा फैक्टर जीयूआई ट्यूटोरियल/उदाहरण ऐप?
- 23. ओओ क्या होना चाहिए और क्या नहीं होना चाहिए?
- 24. कैबल के साथ एक स्वयं निहित पुस्तकालय कैसे बनाया जाए?
- 25. ओएथएक्सप्शन "(# 210) विषय एक पृष्ठ होना चाहिए।"
- 26. प्रत्येक गतिविधि में एक लेआउट होना चाहिए?
- 27. फैब्रिक फेंक क्यों देता है 'TypeError: तर्क एक int होना चाहिए, या एक fileno() विधि' होना चाहिए?
- 28. सी - अभिव्यक्ति एक परिवर्तनीय lvalue होना चाहिए
- 29. एनोटेशन विशेषता एक कक्षा शाब्दिक होना चाहिए? क्यूं कर? स्थिरांक भी ठीक होना चाहिए
- 30. मुझे निहित/स्पष्ट ऑपरेटर का उपयोग क्यों करना चाहिए?
आप अपनी सेवा का पर्दाफाश करने के लिए एम्बेडेड टॉमकैट या एम्बेडेड जेटी का उपयोग कर सकते हैं –