2011-05-16 5 views
6

मैं एक लाइव, चेकर्स-जैसी ऐप बनाना चाहता हूं, जो इस तरह काम करेगा: इस चेकरबोर्ड पर सतह जैसे कई आइकन/अवतार प्रदर्शित होंगे। मैं इस बोर्ड, या किसी अन्य प्रकार के इंटरफ़ेस के नीचे एक कमांड प्रॉम्प्ट रखना चाहता हूं, जो उन्हें एक निश्चित अवतार को नियंत्रित करने की अनुमति देगा, और इसे क्रियाओं को पूर्ववत करने के लिए प्राप्त करेगा। एकाधिक उपयोगकर्ता इसे एक समय में उपयोग करेंगे, और मैं सभी अन्य उपयोगकर्ता के परिवर्तन/क्रियाओं को चेकरबोर्ड पर देख पाएंगे।PHP, JS, CSS और HTML के साथ लाइव चेकर्स-जैसे वेब ऐप बनाना?

मैं क्या सोच रहा हूं: ऐसा करने का सबसे अच्छा तरीका क्या है? मुझे अपना एचटीएमएल, सीएसएस, और जेएस दृष्टिकोण नीचे मिला है, लेकिन मेरी डेटा स्टोरेज विधि नहीं है। मुझे पता है कि, PHP का उपयोग करके, मुझे विकल्प का उपयोग करने के लिए विकल्प मिल गए हैं: फ़ाइल-आधारित स्टोरेज, MYSQL, या कुछ अन्य विधि। मुझे यह जानने की ज़रूरत है कि कौन सा बेहतर है, क्योंकि मैं सर्वर-अंतराल, खराब प्रतिक्रिया समय, या कुछ अन्य मुद्दे नहीं चाहता हूं, खासतौर से इस मामले में क्योंकि इन एकाधिक उपयोगकर्ताओं द्वारा क्रियाओं को हर दूसरे 2 या तो पूर्ववर्ती किया जाएगा ।

मैंने पहले भी इसी तरह की चीजें की हैं, लेकिन मैं यह सुनना चाहता हूं कि अन्य अनुभवी प्रोग्रामर से दूसरों को यह कैसे संभालेंगे (सलाह, आदि)।

उत्तर

7

node.js के लिए एक महान परियोजना की तरह लगता है!

स्पष्टीकरण के लिए, node.js जावास्क्रिप्ट का सर्वर-साइड कार्यान्वयन है। आप जो चाहते हैं वह एक धूमकेतु आधारित एप्लिकेशन है (एक वेब-आधारित क्लाइंट एप्लिकेशन जो क्लाइंट की लगातार सर्वर को मतदान करने के बजाय सर्वर साइड को धक्का देता है), जो बिल्कुल node.js पर अच्छा है।

पारंपरिक AJAX आपके ग्राहकों के लिए डेटा के लिए सर्वर को मतदान करने के लिए कॉल करता है। यह क्लाइंट और सर्वर दोनों के लिए भारी ओवरहेड बनाता है। क्लाइंट को बार-बार पूछे जाने वाले क्लाइंट के अनुरोधों को सीधे पुश करने के लिए अनुरोध करने के लिए सर्वर को अनुमति देना और अधिक प्रतिक्रियाशील इंटरफ़ेस बनाता है। यह सर्वर पर एसिंक्रोनस क्लाइंट कनेक्शन धारण करके पूरा किया जाता है और केवल तब लौटाता है जब सर्वर के पास जवाब देने के लिए कुछ होता है। एक बार जब सर्वर डेटा के साथ जवाब देता है, तब तक एक और कनेक्शन तुरंत सर्वर द्वारा तब तक बनाया जाता है जब तक डेटा भेजने के लिए तैयार नहीं होता है।

आप PHP के साथ एक ही चीज़ को पूरा करने में सक्षम हो सकते हैं, लेकिन मैं PHP और धूमकेतु प्रकार के अनुप्रयोगों से परिचित नहीं हूं।

उपयोगकर्ताओं और होस्टिंग लागतों की संख्या आपकी फ़ाइल बनाम डीबी विकल्पों में खेल जाएगी। यदि आप दो से अधिक उपयोगकर्ताओं पर योजना बना रहे हैं, तो मैं डेटाबेस से चिपक जाऊंगा। वहां कुछ नोएसक्यूएल विकल्प उपलब्ध हैं, लेकिन मेरे अनुभव में MySQL उन विकल्पों की तुलना में बहुत तेज और अधिक विश्वसनीय है।

आपकी परियोजना के साथ शुभकामनाएँ!

http://en.wikipedia.org/wiki/Comet_%28programming%29

http://www.nodejs.org/

http://zenmachine.wordpress.com/2010/01/31/node-js-and-comet/

http://socket.io/ - सार दूर उनकी क्षमता के आधार पर अपने ग्राहकों के साथ संचार परत (LongPolling, WebSockets, आदि)

+0

मैं अपने स्थानीयहोस्ट (पीसी सर्वर) पर नोड.जेएस को स्थापित करने का तरीका नहीं समझ सकता, बहुत कम वेब सर्वर ...? – mattsven

+0

इसे समझ लिया। धन्यवाद! – mattsven

0

MySQL और XCache !! !!

सुनिश्चित करें कि आप पूर्व परिभाषित कथन का उपयोग करें ताकि MySQL को SQL को फिर से संकलित करने की आवश्यकता न हो। मेमोरी स्टोरेज

का उपयोग करने के लिए भी memtables का उपयोग किया जा सकता है बेशक इंडेक्स का उचित उपयोग करें।

यदि 'गैमेस्टेट' इतना महत्वपूर्ण नहीं है तो आप XCache में सबकुछ भी स्टोर कर सकते हैं। याद रखें कि XCache लगातार डेटा स्टोर नहीं करता है (अपाचे पुनरारंभ करने के बाद)

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