मुझे आपको यह बताने से नफरत है, लेकिन आपके प्रश्न का कोई आसान जवाब नहीं है।
एक क्रमबद्धता प्रारूप का प्रदर्शन कई कारकों पर निर्भर करता है। सबसे पहले, प्रदर्शन कार्यान्वयन प्रारूप की तुलना में अधिक है। आप वास्तव में जानना चाहते हैं कि प्रत्येक प्रारूप के विशिष्ट जेआरबीई कार्यान्वयन कितने अच्छे प्रदर्शन करते हैं (या शायद जावा कार्यान्वयन, यदि आप उन्हें लपेट रहे हैं)। उत्तर सी ++ जैसी अन्य भाषाओं में उत्तर से जंगली रूप से अलग हो सकता है।
इसके अतिरिक्त, लाइब्रेरी का उपयोग करने के तरीके के आधार पर प्रदर्शन अलग-अलग होगा। कई पुस्तकालयों के एपीआई "आसान, धीमी" तरीके और "तेज़, कठिन" तरीके के बीच एक व्यापार-बंद प्रदान करते हैं। अनुकूलन करते समय, आप दस्तावेज़ीकरण का ध्यानपूर्वक अध्ययन करना चाहते हैं और अधिकतम प्रदर्शन को निचोड़ने के तरीके के बारे में जानने के लिए पुस्तकालयों के लेखकों से उदाहरण कोड देखें।
अंत में - और सबसे महत्वपूर्ण बात यह है कि आप जिस डेटा के साथ काम कर रहे हैं उसके आधार पर प्रदर्शन बेहद अलग है। विभिन्न प्रारूपों और कार्यान्वयन विभिन्न प्रकार के डेटा के लिए अनुकूलन। उदाहरण के लिए, स्ट्रिंग-भारी डेटा संख्या-भारी डेटा से बहुत अलग कोड पथ का उपयोग करने जा रहा है। प्रत्येक प्रारूप के लिए - यहां तक कि JSON और XML * - हमेशा एक उपयोग केस ढूंढना हमेशा संभव होता है जहां वे अन्य सभी की तुलना में बेहतर प्रदर्शन करते हैं। पुस्तकालयों के लेखकों से आने वाले बेंचमार्क से सावधान रहें क्योंकि इससे उनके लिए अनुकूल मामलों का उपयोग करने पर जोर दिया जाएगा।
दुर्भाग्यवश, यदि आप वास्तव में जानना चाहते हैं कि कौन सा प्रारूप आपके लिए बेहतर प्रदर्शन करेगा, तो आप जिस तरीके से बाहर निकलने जा रहे हैं, वह आपके कोड के दो संस्करणों को लिखकर, प्रत्येक लाइब्रेरी का उपयोग करके और उनकी तुलना करके है। कोई बाहरी बेंचमार्क आपको वास्तविक जवाब देने में सक्षम नहीं होगा।
(मैं Protobuf v2 और Cap'n Proto के लेखक हूँ, इसलिए मैं बहुत समय बिताया है क्रमबद्धता मानक देख रही है और प्रदर्शन के बारे में सोच।)
* बस एक्सएमएल के बारे में मजाक कर रहे।
स्रोत
2016-07-04 20:58:47
स्टैक ओवरफ्लो के लिए कोई अच्छा सवाल नहीं है लेकिन इस पोस्ट को चेकआउट करें: http://www.sammur.com/?p=36 – Nicholas
बहुत धन्यवाद निकोलस :) –