मेरे पास एक एरलंग/ओटीपी एप्लिकेशन है जो कुछ व्यावसायिक तर्क करता है। यह एरलांग में ज्यादातर गलती सहनशीलता के लिए लिखा गया है, क्योंकि मैं सिस्टम के क्रैश किए गए घटकों में से एक को आसानी से पुनरारंभ कर सकता हूं (उच्च अपटाइम सबसे महत्वपूर्ण आवश्यकता है)। इसके प्रत्येक घटक कुछ विशिष्ट "समानांतर" गणना करता है।वेब अनुप्रयोग के घटक-आधारित आर्किटेक्चर के हिस्से के रूप में ओटीपी/एरलांग का उपयोग
एक कार्य चक्र के परिणामस्वरूप एप्लिकेशन मूल्यों की एक सूची तैयार करता है। आइए इस एर्लांग/ओटीपी एप्लिकेशन को "बैक एंड" कहते हैं।
यह एरलांग/ओटीपी एप्लिकेशन निरंतर भंडारण में परिणामों को संग्रहीत करने के लिए PostgreSQL सर्वर का उपयोग करेगा और इसके गणनाओं के लिए आवश्यक अतिरिक्त मेटा-सूचना संग्रहीत करेगा (अभी तक लागू नहीं किया गया है)।
अगला मैं इस Erlang/OTP आवेदन करने के लिए एक सामने के अंत जोड़ने की जरूरत है - एक सरल वेब आधारित समाधान जो एक वेब उपयोगकर्ता के लिए सेवा कर सकते हैं: उससे संगणना के लिए एक अनुरोध को स्वीकार/उसकी, करने के लिए बैक-एंड पूछना कम्प्यूटेशंस करें और उपयोगकर्ता को बैक एंड से परिणाम दें।
कोई scalability आवश्यकता नहीं है, मुझे लगता है कि प्रतिदिन उपयोगकर्ताओं की अधिकतम संख्या हो सकता है कि कोई और अधिक से अधिक 1000
तो मेरी वर्तमान कार्य अब मेरी पीठ के अंत Erlang के लिए एक आम सामने के अंत लागू करने के लिए है/ओटीपी आवेदन (सामान्य माध्यमों में मेरे पास एक सामान्य उपयोग केस है: साइट पर जाएं, पंजीकरण करें, लॉग-इन करें, ऐप का उपयोग करें, परिणाम को एक अच्छा AJAX 'वेब पेज, लॉग-आउट देखकर प्राप्त करें)।
एक तरफ, मुझे पता है कि कोड पुन: उपयोग मुझे बहुत समय बचा सकता है: उदाहरण के लिए रूबी पर रूबी के साथ मैं उपयोगकर्ता प्रमाणीकरण, पासवर्ड भंडारण, AJAX इंटरफेस और कई अन्य सामान मुफ्त में प्राप्त कर सकता हूं।
दूसरी तरफ मुझे एक एप्लिकेशन को डिजाइन करने के बारे में कुछ भी नहीं पता है जिसमें एक एरलंग/ओटीपी + पोस्टग्रेएसक्यूएल डीबी सर्वर बैक एंड और वेब-फ्रेमवर्क (आरओआर, डीजेगो, आदि) फ्रंट-एंड के रूप में शामिल है।
मेरे मन में बहुत सारे प्रश्न वसंत हैं: क्या परिणाम साझा करने के लिए एरलांग/ओटीपी और वेब-फ्रेमवर्क उसी पोस्टग्रेएसक्यूएल डेटाबेस का उपयोग करना चाहिए? वेब-फ्रेमवर्क से एरलांग/ओटीपी एप्लिकेशन में गणना अनुरोध भेजने और इसे वापस पाने का सबसे अच्छा तरीका क्या है? मैं PostgreSQL सर्वर की निगरानी कैसे करूं - यह ओटीपी की गलती सहनशीलता से ढंका नहीं है?
आम तौर पर, मेरे पास कुछ विषम सॉफ़्टवेयर घटक हैं और मैं उनसे एक कार्य प्रणाली बनाना चाहता हूं ('मुख्य' घटक एरलांग/ओटीपी अनुप्रयोग है)।
मुझे इस कार्य के साथ कहां से शुरू करना चाहिए? क्या आप मुझे कोई सलाह या संकेत दे सकते हैं जो संसाधनों को पढ़ने के लिए?
पीएस मैंने this पढ़ने की कोशिश की है और लिंक का पालन किया है, लेकिन ज्यादा समझ में नहीं आया।
युपीडी: मुझे पता है कि शिकागो बॉस और अन्य Erlang वेब चौखटे मौजूद हैं, लेकिन मुझे शक है कि उनमें से किसी को इस तरह के एक परिपक्व पर्यावरण, जीवंत समुदाय और विभिन्न प्लग इन और जैसे उदाहरण रूबी के लिए पर लाइब्रेरी के विशाल परिवर्तनशीलता है रेल, Django या किसी भी PHP आधारित एमवीसी ढांचे। सही?
UPD2: शायद मुझे इस गहराई से विस्तार करना होगा: मुझे आगे के अंत तक जितना संभव हो सके बनाए रखने की आवश्यकता है। Erlang में ऐसा करने का मतलब है कि मुझे सही डेवलपर्स को बनाए रखने के लिए समस्याओं का सामना करना पड़ सकता है; RoR, Django, आदि में ऐसा करने का मतलब है कि मैं सामने के अंत को बनाए रखने और इसे विकसित करने के लिए आसानी से कार्य बल ढूंढ सकता हूं।
मैंने अपना जवाब भी संपादित किया है। उत्तर अपडेट देखें। धन्यवाद –