मैं इसे सरल रखने का सुझाव देते हैं ...
अपने घटनाओं स्टोर करने के लिए एक डेटाबेस तालिका बनाएँ, उस तालिका में सम्मिलित जब उचित हो, तो सिर्फ एक सरल ajax मतदान तकनीक सर्वर हर एक्स सेकंड हिट करने के लिए लागू ग्राहक पक्ष पर।
मुझे पुश-नोटिफिकेशन दृष्टिकोण या नोएसक्ल डेटा स्टोर का उपयोग करने पर विचार करने के अन्य समाधानों से संबंधित है। Django ढांचे में बनाए गए टूल्स का उपयोग करके पारंपरिक पुल-अधिसूचना प्रणाली की तुलना में यह एक बहुत अधिक जटिल है, और बहुत ही दुर्लभ अपवादों को छोड़कर, अधिक है। जब तक आपको विशेष रूप से सख्त रीयल-टाइम समाधान की आवश्यकता नहीं होती है, तब तक इसे सरल रखें और पहले से ही ढांचे में मौजूद उपकरणों का उपयोग करें, और डेटाबेस या नेटवर्क प्रदर्शन के आधार पर आपत्तियों वाले लोगों के लिए, मुझे यह कहना है कि समयपूर्व अनुकूलन जड़ है सभी बुराई
एक मॉडल बनाएं जिसमें आपके एप्लिकेशन के लिए हालिया गतिविधि डेटा शामिल है, फिर भी जब भी आपका एप्लिकेशन ऐसा कुछ करता है जो नई गतिविधि को लॉग इन कर लेता है तो आप बस इस तालिका में सम्मिलित कर सकते हैं।
आपका दृश्य किसी भी अन्य दृश्य की तरह होगा, x पंक्तियों को इस RecentActivity
तालिका (वैकल्पिक रूप से क्वेरी पैरामीटर और जो भी हो) पर खींचें।
फिर, ग्राहक पक्ष पर, आपके पास बस एक साधारण AJAX परागक होगा जो आपके दृश्य को हर x सेकेंड पर रखेगा। जटिल प्लगइन्स और प्रौद्योगिकियों का उपयोग कर सकते की कोई कमी नहीं है, लेकिन अपने स्वयं के लेखन है कि जटिल या तो नहीं है:
function simplePoll() {
$.get("your-url", {query-parameters}, function(data){
//do stuff with the data, replacing a div or updating json or whatever
setTimeout(simplePoll, delay);
});
}
मेरे विचार यह है कि प्रदर्शन के मुद्दों वास्तव में मुद्दों तक आपकी साइट उनके लिए काफी सफल हुआ नहीं हैं एक मुद्दा होना एक पारंपरिक रिलेशनल डेटाबेस काफी अच्छी तरह से बढ़ सकता है जब तक आप ट्विटर, Google, आदि जैसे सफलता के स्तर तक पहुंचने शुरू नहीं करते हैं। हम में से अधिकांश उस स्तर पर नहीं हैं :)
स्रोत
2011-10-02 19:08:22
यह आम तौर पर अच्छी सलाह है, लेकिन सवाल विशेष रूप से कहता है "django में (AJAX लंबे मतदान के साथ)"। – dkamins