Project Darkstar
प्रोजेक्ट डार्कस्टार जावा में लिखा गया एक ओपन-सोर्स एम. एम. ओ. जी. मिडलवेयर समाधान था। प्रोजेक्ट डार्कस्टार की शुरुआत 1999 में जेफ केसेलमैन की एक व्यक्तिगत परियोजना के रूप में हुई थी। यह बाद में सन माइक्रोसिस्टम्स में एक शोध परियोजना बन गई, और इसका उद्देश्य "डेवलपर्स और ऑपरेटरों को आज बड़े पैमाने पर ऑनलाइन गेम, आभासी दुनिया और सोशल नेटवर्किंग अनुप्रयोगों से जुड़ी गंभीर, लेकिन विशिष्ट समस्याओं से बचने में मदद करना है, जिसमें ज़ोन ओवरलोडिंग, डेटा भ्रष्टाचार और सर्वर का कम उपयोग शामिल है।" हिस्ट्री प्रोजेक्ट डार्कस्टार की शुरुआत 1999 में जेफ केसेलमैन की एक व्यक्तिगत परियोजना के रूप में हुई थी, जब वे टोटल एंटरटेनमेंट नेटवर्क में सीनियर गेम इंटीग्रेशन इंजीनियर थे। 2004 में, सन के गेम टेक्नोलॉजी ग्रुप का गठन किया गया था, और उस समय श्री केसेलमैन ने परियोजना के तीसरे पुनरावृत्ति को सन में लाया जहां इसे सन गेम सर्वर कहा गया था। (एस. जी. एस. उपनाम आज भी प्रोजेक्ट डार्कस्टार सर्वर के पैकेज नामों में मौजूद है।) श्री केसेलमैन ने सन में एक एकल परियोजना के रूप में एक वर्ष के लिए तीसरे संस्करण पर काम किया, उस वर्ष गेम डेवलपर्स सम्मेलन में एक प्रारंभिक संस्करण की शुरुआत की। 2005 में सॉफ्टवेयर सीटीओ के कार्यालय के पुनर्गठन के बाद, परियोजना को सन लैब्स के निदेशक कार्ल हैबरल के तहत सन लैब्स में स्थानांतरित कर दिया गया था। कार्ल ने मानव-शक्ति को बढ़ाया, सेठ प्रॉक्टर और डैन एलार्ड को सह-शोधकर्ताओं के रूप में जोड़ा, साथ ही ठेकेदार जेम्स मेगक्वियर और स्टेन एंडरसन को भी जोड़ा। इस दल ने जी. डी. सी. 2005 के लिए पहला कार्यशील सर्वर, जिसे अब अर्ली एक्सेस संस्करण के रूप में जाना जाता है, वितरित किया। 2 फरवरी, 2010 को, ओरेकल द्वारा सन की खरीद के बाद, जिम वाल्डो ने "परियोजना घोषणा" मंच पर पोस्ट किया कि "सन लैब्स के इंजीनियरिंग प्रयास को अब डार्कस्टार विकास पर लागू नहीं किया जा रहा है।" सन लैब्स टीम के कई सदस्यों और डार्कस्टार समुदाय के कई सदस्यों ने डार्कस्टार के उत्तराधिकारी के रूप में रेडड्वार्फ सर्वर पर कुछ समय के लिए काम किया। विशेषताएँ जब एक परियोजना डार्कस्टार सर्वर कार्यान्वयन चलाया जाता है, तो यह या तो एक नया नेटवर्क शुरू करता है या वर्तमान में चल रहे नेटवर्क में शामिल हो जाता है। सभी नेटवर्क में क्लाइंट, सर्वर कार्यान्वयन, एक प्रोजेक्ट डार्कस्टार स्टैक होता है जिस पर सर्वर कार्यान्वयन चलता है, और कई मेटा-सर्विस नोड्स होते हैं जो सर्वर स्टैक में प्रत्येक नोड के बीच यातायात को संभालते हैं। सर्वर कार्यान्वयन परियोजना डार्कस्टार एपीआई के साथ लिखा गया एक उपयोगकर्ता द्वारा बनाया गया प्रोग्राम है। क्लाइंट्स में सभी क्लाइंट-साइड एप्लिकेशन और गेम शामिल हैं जो नेटवर्क में गेम सर्वर से जुड़े होते हैं। प्रोजेक्ट डार्कस्टार को एक बड़े पैमाने पर मल्टीप्लेयर गेम के लिए महत्वपूर्ण सभी सुविधाओं का समर्थन करने के लिए विकसित किया जा रहा है, और साथ ही साथ गैर-बड़े मल्टीप्लेयर ऑनलाइन गेम का समर्थन करने के लिए पर्याप्त स्केलेबल है। जैसे, ऐसी कई विशेषताएं हैं जो इसका समर्थन करती हैं, और कई विशेषताएं हैं जिन्हें सक्रिय रूप से लागू किया जा रहा है और इसमें एकीकृत किया जा रहा है। सीपीयू लोड बैलेंसिंग मेटा-सेवाएँ बर्कले डीबी लेन-देन का उपयोग करके लगातार डेटा भंडारण डुपिंग रोकथाम चैनल संचार स्केलेबल डेटा संरचनाएँ प्लगेबल प्रोटोकॉल प्रशासनिक उपकरण परियोजना डार्कस्टार का एपीआई उन डेवलपर्स के लिए प्रमुख घटक है जो प्रौद्योगिकी का उपयोग करते हैं। इसके साथ, वे अपनी क्लाइंट तकनीक के साथ सही ढंग से संवाद करने के लिए गेम सर्वर विकसित कर सकते हैं और एक सर्वर तैयार कर सकते हैं जो प्रोजेक्ट डार्कस्टार गेम स्टैक के शीर्ष पर चलता है। एपीआई को अंतर्निहित प्रणाली की समरूपता को छिपाने के लिए लिखा जाता है जो प्रोजेक्ट डार्कस्टार स्टैक डेवलपर के लिए करता है, ताकि प्रोग्राम को इस भ्रम के साथ लिखा जा सके कि यह एकल थ्रेडेड है, भले ही स्टैक पूरी तरह से समानांतर हो। एपीआई के मुख्य भागों में कार्य प्रबंधन, डेटा दृढ़ता और चैनल संचार शामिल हैं। प्रोजेक्ट डार्कस्टार सर्वर में जानकारी का नियंत्रण आम तौर पर कार्यों द्वारा संभाला जाता है, हालांकि कुछ विशेष मामलों में वे आवश्यक नहीं होते हैं। इनका उपयोग ऐसे उदाहरणों में किया जाता है जहां डेटा के भंडारण या पुनर्प्राप्ति को सर्वर क्रैश या शटडाउन से संरक्षित किया जाना चाहिए, क्योंकि कार्यों को सहेजा जाता है और जब वे चलाए जाते हैं तो उन्हें याद किया जाता है, और जब सर्वर को उसी स्थिति में फिर से शुरू किया जाता है जब वे क्रैश से पहले थे। उदाहरण के लिए, चरित्र जानकारी को अद्यतन करते समय यह उपयोगी है। यदि सर्वर में आंतरिक रूप से कुछ गड़बड़ हो जाती है, तो चरित्र की जानकारी बनी रहती है और सर्वर पर चरित्र की जानकारी को क्रैश से पहले की अंतिम स्थिति से पुनर्स्थापित किया जाएगा। प्रोजेक्ट डार्कस्टार द्वारा उपयोग किया जाने वाला बर्कले डी. बी. उन सभी आंकड़ों को संग्रहीत करता है जिन्हें बनाए रखा जाना है। डेटाबेस में जो कुछ भी संग्रहीत किया जाना है वह भी क्रमबद्ध होना चाहिए, क्योंकि डेटाबेस को द्विआधारी जानकारी संग्रहीत करने के लिए प्रोग्राम किया गया है। एक प्रबंधित वस्तु खिलाड़ी डेटा से कुछ भी हो सकती है। स्थिति, उपकरण) से आंतरिक सर्वर डेटा और नियंत्रण तर्क (अर्थात। स्केलेबल डेटा संरचना, कार्य)। प्रबंधित वस्तुओं की उपयोगिता सर्वर की विफलता के उदाहरण में देखी जाती है। चूँकि प्रबंधित वस्तुओं को लेन-देन के रूप में अद्यतन किया जाता है, इसलिए सर्वर के पुनः आरंभ होने पर किसी भी दूषित डेटा को छोड़ दिया जाता है और प्रबंधित वस्तु को उसकी अंतिम कार्यशील स्थिति में वापस ले जाया जाता है। चैनल डेवलपर्स को कई ग्राहकों के साथ संवाद करने का एक आसान तरीका देते हैं। चैनल जिस तरह से काम करते हैं, वह ग्राहकों को चैनल की सदस्यता लेने का एक तरीका देना है ताकि वे चैनल पर संदेश भेज सकें और चैनल से संदेश प्राप्त कर सकें। जब किसी ग्राहक या सर्वर से चैनल पर कोई संदेश भेजा जाता है, तो संदेश उन सभी ग्राहकों के लिए बहुकार्य होता है जो इसकी सदस्यता लेते हैं। यह कई ग्राहकों और सर्वर के बीच आसान और विस्तार योग्य संचार के विकास में सहायता के लिए संचार परत के शीर्ष पर बनाया गया एक अमूर्त है। उल्लेखनीय उपयोग ओपन वंडरलैंड-सहयोगात्मक 3डी आभासी दुनिया स्वागत बनाने के लिए एक 100% जावा ओपन सोर्स टूलकिट कुछ लेखकों ने सुझाव दिया है कि सेंट्रल ऑब्जेक्ट स्टोर और डिस्ट्रीब्यूटेड रैंडम एक्सेस का प्रबंधन अत्यधिक इंटरैक्टिव गेम वातावरण में वास्तविक रूप से संभव नहीं हो सकता है। रेडड्वार्फ रेडड्वार्फ सर्वर बड़े पैमाने पर मल्टीप्लेयर ऑनलाइन गेम के सर्वर-साइड को विकसित करने के लिए एक ओपन-सोर्स मिडलवेयर समाधान था। यह प्रोजेक्ट डार्कस्टार का आधिकारिक सामुदायिक कांटा था। एक बार जब ओरेकल ने परियोजना के लिए समर्थन बंद कर दिया, तो समुदाय ने प्रोजेक्ट डार्कस्टार के रिपॉजिटरी के नवीनतम कोडबेस को रीब्रांड किया और इसे रेडड्वार्फ सर्वर के रूप में जारी किया। रेडड्वार्फ को प्रोजेक्ट डार्कस्टार लाइसेंस योजना विरासत में मिली, जिसमें रेडड्वार्फ सर्वर जी. पी. एल. वी. 2 के तहत वितरित किया गया और सर्वर ए. पी. आई. को क्लासपाथ अपवाद के साथ जी. एन. यू. जनरल पब्लिक लाइसेंस (जी. पी. एल.) के तहत उपलब्ध कराया गया। जावा और सी क्लाइंट एपीआई-जो रेडड्वार्फ परियोजना के हिस्से के रूप में उपलब्ध हैं-को बीएसडी लाइसेंस के तहत वितरित किया गया था। ग्राहक जावा या सी एपीआई का उपयोग करके सर्वर के साथ संवाद कर सकते हैं। समुदाय ने सी #, पायथन, ऑब्जेक्टिव-सी और एक्शनस्क्रिप्ट सहित अतिरिक्त प्लेटफार्मों के लिए क्लाइंट एपीआई भी जारी किए। रेडड्वार्फ सर्वर नेटवर्क संचार के लिए एक अंतर्निहित प्रोटोकॉल का उपयोग करता है। संदर्भ बाहरी लिंक परियोजना डार्कस्टार बड़े पैमाने पर मल्टीप्लेयर ऑनलाइन गेम निष्क्रिय बड़े पैमाने पर मल्टीप्लेयर ऑनलाइन गेम सन माइक्रोसिस्टम सॉफ्टवेयर