2012-12-10 12 views
7

मेरे पास उपयोगकर्ता-लॉगिन और उपयोगकर्ता-प्रबंधन के लिए एक django बैकएंड सेट है, साथ ही मेरे टेम्पलेट्स के पूरे सेट के साथ जो साइट पर आगंतुकों द्वारा एचटीएमएल फाइलों को प्रदर्शित करने के लिए उपयोग किया जाता है। हालांकि, मैं अपनी साइट पर रीयल-टाइम कार्यक्षमता जोड़ने की कोशिश कर रहा हूं और मुझे नोड के भीतर एक परिपूर्ण लाइब्रेरी मिली है। जेएस जो दो उपयोगकर्ताओं को टेक्स्ट बॉक्स में टाइप करने की अनुमति देता है और टेक्स्ट दोनों स्क्रीन पर दिखाई देता है। क्या दो बैकएंड मर्ज करना संभव है?क्या Django और Node.Js का उपयोग करना संभव है?

उत्तर

9

विभिन्न उद्देश्यों के लिए एकाधिक बैक-एंड चलाने के लिए यह बिल्कुल संभव (और कभी-कभी बेहद उपयोगी) है। हालांकि यह आपके सिस्टम की किस तरह की कठोरता के आधार पर कीड़े के कुछ डिब्बे खोलता है,

  • राज्य। आप अलग-अलग ऐप सर्वरों के बीच सत्र स्थिति साझा करना चाहेंगे। ऐसा करने का सबसे आसान तरीका बाहरी सत्र स्थिति को ढांचे-अज्ञेय तरीके से स्टोर करना है। मैं एक कुंजी/मूल्य स्टोर में JSON ऑब्जेक्ट्स का सुझाव दूंगा और आपको शायद JSON स्कीमा से लाभ होगा।
  • डोमेन/रूटिंग। आपको ऐप सर्वर दोनों के लिए उपलब्ध होने के लिए अपनी लॉगिन कुकी की आवश्यकता होगी, जिसका अर्थ है कि या तो अपाचे/एनजिनक्स द्वारा रूट किया गया एक डोमेन या DNS के माध्यम से अलग किए गए अलग-अलग सबडोमेन। मैं निम्नलिखित कारणों के लिए अलग सबडोमेन का सुझाव दूंगा
  • वेबसाइट्स। मैं पुराना हो सकता हूं, लेकिन मेरे ज्ञान के लिए न तो अपाचे और नग्निक्स वेबसाइकिलों का प्रॉक्सीइंग का समर्थन करता है, जिसका अर्थ है कि यदि आप इसका उपयोग करना चाहते हैं तो आप एक ऐप प्रॉक्सी के रूप में एक http सर्वर का उपयोग करने की लचीलापन बलिदान करेंगे और इसके बजाय सीधे नोड का पर्दाफाश करेंगे उप डोमेन।
  • गैर निर्दिष्ट आवश्यकताओं। निगरानी, ​​लॉगिंग, त्रुटि अधिसूचना, निर्माण प्रणाली, परीक्षण, निरंतर एकीकरण/तैनाती, दस्तावेज इत्यादि जैसी चीजें सभी को नए प्रकार के घटक
  • कौशल का समर्थन करने के लिए विस्तारित करने की आवश्यकता है। आपको अधिक जटिल अनुप्रयोग आर्किटेक्चर

का प्रबंधन करने के लिए आवश्यक कौशल-सेट के लिए समय या धन का भुगतान करना होगा, इसलिए, मेरी सलाह आपको इस बारे में बहुत सावधानी से सोचना होगा कि आपको इसकी आवश्यकता है या नहीं। इसमें बहुत समय और विचार शामिल हो सकते हैं।

अद्यतन: वास्तव में ऐसी कंपनियां हैं जो मौजूदा साइटों पर वास्तविक समय जोड़ने में विशेषज्ञ हैं। मैं किसी भी नाम का नाम नहीं दे रहा हूं, लेकिन यदि आप प्लेटफ़ॉर्म होस्ट करने के लिए ऐड-ऑन मार्केटप्लेस पर 'रीयल-टाइम' ढूंढते हैं (उदा। हेरोोकू) तो आप उन्हें पाएंगे।

अद्यतन 2: Nginx अब support for Websockets

2

आप उन्हें विलय नहीं कर सकते हैं। आप Django से Node.Js से कुछ कतार प्रणाली के माध्यम से Reddis जैसे संदेश भेज सकते हैं।

0

यदि आप वास्तव में दो बैकएंड का उपयोग करना चाहते हैं, तो आप दोनों बैकएंड द्वारा समर्थित डेटाबेस का उपयोग कर सकते हैं।

हालांकि मैं इसकी अनुशंसा नहीं करता था।

0

Django, Node.js, Socket.io और Reddis की कोशिश करो।

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