MessagePack
मैसेजपैक एक कंप्यूटर डेटा इंटरचेंज प्रारूप है। यह सरणी और सहयोगी सरणी जैसी सरल डेटा संरचनाओं का प्रतिनिधित्व करने के लिए एक द्विआधारी रूप है। मैसेजपैक का उद्देश्य यथासंभव संक्षिप्त और सरल होना है। आधिकारिक कार्यान्वयन सी, सी + +, सी #, डी, एर्लैंग, गो, हास्केल, जावा, जावास्क्रिप्ट (नोडजेएस), लुआ, ओकैमल, पर्ल, पीएचपी, पायथन, रूबी, रस्ट, स्केला, स्मॉलटॉक और स्विफ्ट जैसी विभिन्न भाषाओं में उपलब्ध है। मैसेजपैक द्वारा संसाधित डेटा प्रकार और वाक्यविन्यास डेटा संरचनाएं जे. एस. ओ. एन. प्रारूप में उपयोग किए जाने वाले डेटा संरचनाओं के अनुरूप हैं। इनमें निम्नलिखित तत्व प्रकार शामिल हैंः नील बूल, बूलियन (सही और गलत) इंट, पूर्णांक (हस्ताक्षरित या हस्ताक्षरित 64 बिट तक) फ्लोट, फ्लोटिंग पॉइंट नंबर (आई. ई. ई. ई. एकल/दोहरी परिशुद्धता) स्ट्र, यू. टी. एफ.-8 स्ट्रिंग बिन, द्विआधारी डेटा (232-1 बाइट्स तक) सरणी मानचित्र, एक सहयोगी सरणी एक्स. टी. (एक अनुप्रयोग-परिभाषित प्रारूप का मनमाना डेटा, 232-1 बाइट्स तक) टाइमस्टैम्प (एक्स. टी. प्रकार =-1) (64-बिट सेकंड और 32-बिट नैनोसेकंड तक) अन्य प्रारूपों की तुलना में मैसेजपैक जे. एस. ओ. एन. की तुलना में अधिक सघन है, लेकिन सरणी और पूर्णांक आकारों पर सीमाएं लगाता है। दूसरी ओर, यह द्विआधारी डेटा और गैर-यू. टी. एफ.-8 एन्कोडेड स्ट्रिंग की अनुमति देता है। जे. एस. ओ. एन. में, मानचित्र कुंजी स्ट्रिंग्स होनी चाहिए, लेकिन मैसेजपैक में ऐसी कोई सीमा नहीं है और किसी भी प्रकार की मानचित्र कुंजी हो सकती है, जिसमें मानचित्र और सरणी जैसे प्रकार शामिल हैं, और, जैसे कि वाई. ए. एम. एल., संख्याएँ। बी. एस. ओ. एन. की तुलना में, मैसेजपैक अधिक स्थान-कुशल है। बीएसओएन को तेज़ इन-मेमोरी हेरफेर के लिए डिज़ाइन किया गया है, जबकि मैसेजपैक को तार पर कुशल संचरण के लिए डिज़ाइन किया गया है। उदाहरण के लिए, बी. एस. ओ. एन. को सभी स्ट्रिंग्स के अंत में नल टर्मिनेटर की आवश्यकता होती है और सूची तत्वों के लिए स्ट्रिंग अनुक्रमणिका सम्मिलित करता है, जबकि मैसेजपैक नहीं करता है। बी. एस. ओ. एन. आंतरिक रूप से सरणियों और मानचित्रों दोनों को दस्तावेजों के रूप में दर्शाता है, जो मानचित्र हैं, जहां एक सरणी एक मानचित्र है जिसमें 0 से दशमलव स्ट्रिंग के रूप में गिनती की जाती है। दूसरी ओर मैसेजपैक मानचित्र और सरणी दोनों को सरणी के रूप में दर्शाता है, जहां प्रत्येक मानचित्र कुंजी-मूल्य जोड़ी सन्निहित होती है, जिससे विषम वस्तु कुंजी और सम वस्तु मूल्य बनते हैं। प्रोटोकॉल बफ़र्स प्रारूप मैसेजपैक की तुलना में काफी अधिक संक्षिप्त संचरण प्रारूप प्रदान करता है क्योंकि यह क्षेत्र के नामों को प्रसारित नहीं करता है। हालांकि, जबकि जे. एस. ओ. एन. और मैसेजपैक का उद्देश्य टाइप टैग के साथ मनमाने ढंग से डेटा संरचनाओं को क्रमबद्ध करना है, प्रोटोकॉल बफ़र्स को डेटा प्रकारों को परिभाषित करने के लिए एक योजना की आवश्यकता होती है। प्रोटोकॉल बफ़र्स संकलक अनुप्रयोग कोड में क्रमिककरण के एकीकरण की सुविधा के लिए लक्षित भाषा में बॉयलरप्लेट कोड बनाता है; मैसेजपैक केवल एक गतिशील रूप से टाइप की गई डेटा संरचना देता है और कोई स्वचालित संरचना जांच प्रदान नहीं करता है। मैसेजपैक को सी. बी. ओ. आर. में संदर्भित किया गया है। अपाचे थ्रिफ्ट अपाचे एवरो बी. एस. ओ. एन. सी. बी. ओ. आर. जे. एस. ओ. एन. बी. जे. एस. ओ. एन. प्रोटोकॉल बफर्स स्माइल यू. बी. जे. एस. ओ. एन. डेटा क्रमिककरण प्रारूपों की तुलना वाई. ए. एम. एल. एक्स. डी. आर. संदर्भ बाहरी लिंक संदेशपैक प्रारूप विनिर्देशन डेटा क्रमिककरण प्रारूप देखें।