विभिन्न खेल विभिन्न तरीकों से चीजों को संग्रहीत करते हैं। अक्सर, गेम कंपनियां ऐसा करने के लिए कोई रास्ता बनाती हैं, और उनके अधिकांश गेम उसी तरह का उपयोग करते हैं। बेशक, विभिन्न स्टूडियो अक्सर अलग-अलग तरीकों का उपयोग करते हैं। SQL का उपयोग निश्चित रूप से गेम के लिए किया जाता है, जैसे कि CCP (EVE) में SQL सर्वर का नेटवर्क होता है (या कम से कम), मुझे यकीन नहीं है कि अब वे इसे कैसे करते हैं। अन्य, बस बहुत सारी फ़ाइलों का उपयोग करें।
शायद विभिन्न गेम डेटा लेनदेन को संभालने के लिए अज्ञेय "डेटा ब्रोकर तंत्र" बनाने से शुरू करें? चूंकि आप किसी भी तरह से परीक्षण कर रहे हैं, इसलिए एक ऐसा तंत्र बनाएं जो आपको खेल के दृष्टिकोण से भंडारण के बारे में बहुत अधिक देखभाल करने की आवश्यकता नहीं है। मतलब, होस्ट एप्लिकेशन से कैसे, इस पर ध्यान केंद्रित करें।
व्यक्तिगत रूप से मुझे लगता है कि यह एक महान संपत्ति होगी यदि आप वास्तविक स्टोर को स्विच कर सकते हैं, बिना गेम और ब्रोकर को फिर से लिखे बिना। ब्रोकर से बात करने के लिए समान इंटरफ़ेस वाले दूसरे मॉड्यूल पर जाएं।
डेटा को अपने आप में संग्रहीत करने की संभावना नहीं है कि यह एक मुद्दा है, प्रति से। मेजबान और सभी ग्राहकों के बीच, उस स्टोर से / से, कुशलता से डेटा शिपिंग किया जा सकता है। क्या मैं पूरे खिलाड़ी के डेटा सेट को शिप करता हूं, या अगर मैं इसे भागों में तोड़ता हूं, तो मैं किस विभाजन को चुनता हूं, आदि कौन सी स्थिति में अधिक संसाधन गहन है, आदि।
डेटा को जहाज करने का एक प्रारूप, XML हो सकता है। इस तरह आप अधिक आसानी से गतिशील हो सकते हैं कि आप इसे कैसे चुन सकते हैं। एक वर्ण बनाम एकाधिक वर्ण, या एक आइटम बनाम आइटम का एक संग्रह, आदि। तब आप XML के रूप में XML (SQL) में "स्टोर" कर सकते हैं, और / या SQL ने XML से अधिक ट्रांजेक्शनल फैशन में वितरित किया है, कैसे आप वास्तव में संग्रहीत डेटा चाहते हैं।
एक और तरीका द्विआधारी है, जो शिपिंग के संदर्भ में अधिक कुशल है, लेकिन अन्य स्थितियों में अधिक लागत को लागू कर सकता है।
1,000 ग्राहकों के साथ, आप शुरू कर सकते हैं, और आसानी से प्रति ग्राहक 10 एमबी स्टोर कर सकते हैं और केवल 10 जीबी प्रभावी रैम का उपयोग कर सकते हैं + उस डेटा के प्रबंधन के लिए कुछ सिस्टम प्रशासनिक रैम जोड़ें, एक और जीबी या दो कहें। आप उपयोग के लिए तैयार डेटा संरचना में पहले से ही मेजबान पर रैम में रख सकते हैं। और गतिशील रूप से लोड / सहेजें, जो ऑनलाइन पर निर्भर करता है, गतिविधि के आधार पर विभिन्न आवृत्तियों में, आदि।
आप प्रत्येक ग्राहक की जानकारी को एक अलग फ़ाइल में भी संग्रहीत कर सकते हैं, और इसी तरह।