Large JSON Parsing: 100MB डेटा के लिए हाई-परफॉर्मेंस फ्रंटएंड

2024-06-18

लॉग व्यूअर और डेटा ऐप्स में JSON आकार तेजी से बढ़ता है। एक साथ parse और full DOM render करने से टैब रुक सकता है।

समय कहाँ लगता है

JSON.parse synchronous और CPU-heavy है, और parsed graph heap भी बढ़ाता है।

कई बार parse से ज्यादा लागत लाखों UI nodes render करने में होती है।

Web Worker में parsing

Raw text या buffer Worker को भेजें और parse main thread से बाहर करें।

पूरे graph की बजाय current page slice वापस भेजना बेहतर रहता है।

Virtual list

Array डेटा में केवल visible rows render करें।

Tree डेटा में children को expand के समय lazily लोड करें।

Streaming और chunks

JSON Lines streaming के लिए अनुकूल है; बड़े single-array payload में pagination बेहतर है।

ReadableStream के साथ incremental processing से प्रतीक्षा समय घटता है।

100MB के लिए practical सलाह

सर्वर-साइड filter, page और gzip सबसे प्रभावी उपाय हैं।

क्लाइंट-only स्थिति में Worker + virtualization + progress + memory monitoring जरूरी है।