नेट 7 JSON प्रदर्शन जाल

अनस्प्लैश पर कार्ला क्वारियो द्वारा फोटो

नैनो ऑप्टिमाइज़ेशन से परहेज करते हुए हमें कोड लिखते समय प्रदर्शन को ध्यान में रखना चाहिए। कभी-कभी एक मितव्ययी अनुकूलन जैसा दिखने वाला एक बड़ा अंतर बनाता है। आज हम देखेंगे कि किस तरह System.Text.Json में परफॉर्मेंस पेनल्टी ट्रैप है।

इस कोड में क्या गलत है?

हर बार जब हम इस फ़ंक्शन को चलाते हैं, तो यह एक नया JsonSerializerOptions बनाता है। हर बार एक नई वस्तु का दृष्टांत देना कितना बुरा है? आम तौर पर, प्रदर्शन और स्मृति आवंटन के मामले में हर बार एक नई वस्तु बनाना नगण्य होता है। फिर भी, एक प्रदर्शन रूपरेखा करते समय, मेरी टीम को संदिग्ध परिणाम मिले। उन कार्यों में लगने वाला समय बराबर था:

  • SendToServiceBus ()
  • क्रमबद्ध करें()

सीरियलाइज़ इतना धीमा क्यों है?

नया System.Text.Json क्रमांकन मेटाडेटा को कैश करने के लिए JsonSerializerOptions के उदाहरण संदर्भ का उपयोग करता है, इसलिए यदि आप हर बार एक नया उदाहरण प्रदान करते हैं, तो आप कैशिंग खो देते हैं, और कोड को प्रत्येक फ़ंक्शन के लिए मेटाडेटा बनाने का महंगा संचालन करना पड़ता है बुलाना।

यह समस्या इतनी सामान्य है कि Microsoft के पास इसके लिए समर्पित एक पूरा पृष्ठ भी है।

उदाहरण

दस्तावेज़ इस बेंचमार्क उदाहरण प्रदान करते हैं:

जैसा कि आप डॉक्स से देख सकते हैं, अंतर बड़े पैमाने पर है, 200 गुना अधिक महंगा है। और ऐसा कुछ भी नहीं है जो आपको इसके बारे में बताएगा, कोई अपवाद या चेतावनी नहीं। इसका एकमात्र तरीका आपको लोड परीक्षण और प्रोफाइलिंग के दौरान मिलेगा। यह मुझे आश्चर्यचकित करता है कि क्या यह एक चेतावनी होनी चाहिए, इसलिए हम इस गलती की संख्या को कम कर देंगे।

निष्कर्ष

वस्तुओं के जीवनचक्र को जानने और सिंगलटन के लिए निर्माण को अनुकूलित करने जैसी अच्छी प्रथाएं जो दिखती हैं उससे अधिक भुगतान कर सकती हैं। इसलिए जब आप सिंगलटन या प्रति अनुरोध एक नई वस्तु चाहते हैं तो मैं सीखने की सलाह देता हूं।

याद रखें कि हर बार सीरियलाइज़र विकल्प बनाने के महत्वपूर्ण निहितार्थ होते हैं क्योंकि फ्रेमवर्क SerializerOptions संदर्भ के विरुद्ध आंतरिक मेटाडेटा को कैश करता है।

यदि आप एक नया JsonSerializerOptions() देखते हैं, तो सुनिश्चित करें कि यह सिंगलटन पैटर्न में है।

हैप्पी कोडिंग।

Suggested posts

डोमेन नाम के बारे में जानकारी ढूँढना

ब्रायन पी. होगन द्वारा स्मॉल, शार्प सॉफ्टवेयर टूल्स का एक अंश

डोमेन नाम के बारे में जानकारी ढूँढना

जब आप facebook.com से अनुरोध करते हैं, तो आपका कंप्यूटर उस डोमेन नाम को IP पते में अनुवादित करने के लिए डोमेन नाम खोजता है ताकि आपका कंप्यूटर वह कनेक्शन बना सके।

यूआई डिजाइन में डी-वर्ड और एल-वर्ड। भाषा मामले। जातिवादी मत बनो।

यूआई डिजाइन में डी-वर्ड और एल-वर्ड। भाषा मामले। जातिवादी मत बनो।

हमारी भाषा एक शक्तिशाली उपकरण है जो हमारे विचारों, दृष्टिकोणों और कार्यों को आकार दे सकती है। हानिरहित प्रतीत होने वाले शब्द भी हानिकारक पूर्वाग्रहों और रूढ़ियों को कायम रख सकते हैं।

Related posts

कार्य सप्ताह में सीखना आपके विचार से अधिक मायने रखता है

कार्य सप्ताह में सीखना आपके विचार से अधिक मायने रखता है

हम अक्सर अपने आप को उन बातों को लागू करने के लिए संघर्ष करते हुए पाते हैं जो हम जानते हैं कि हमारे लिए अच्छा है। एक महत्वपूर्ण दूसरे को यह बताने से कि हम उन्हें प्यार करते हैं, एक समुद्री डाकू की तरह बात करने के लिए याद रखना, हमेशा ऐसे लोग होंगे जो दावा करते हैं कि एक दिन, सप्ताह या महीने की घटनाओं की आवश्यकता नहीं है क्योंकि वे पहले से ही उन चीजों को कर रहे हैं।

क्यों कुछ फ्रीलांसर अपने जीवन को नकली बना रहे हैं

क्यों कुछ फ्रीलांसर अपने जीवन को नकली बना रहे हैं

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

FY24 में कार्बन हटाने का वित्तपोषण

रास्ते भर में कार्बन180 के विनियोग अनुरोधों का टूटना

FY24 में कार्बन हटाने का वित्तपोषण

एलिसन ली द्वारा, सरकारी मामलों के सलाहकार का प्रबंधन संघीय सरकार की वार्षिक विनियोजन प्रक्रिया कार्बन डाइऑक्साइड हटाने (सीडीआर) को निधि देने के हमारे प्रयासों के केंद्र में है। प्रत्येक वर्ष, Carbon180 विभिन्न कांग्रेस कार्यालयों को यह मार्गदर्शन करने के लिए अनुरोध प्रस्तुत करता है कि अगले वर्ष के डॉलर कहाँ प्रवाहित होंगे।

द थ्रेट आर्काइव: वॉल्यूम 7 ब्लैक बस्ता

द थ्रेट आर्काइव: वॉल्यूम 7 ब्लैक बस्ता

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