تحليل وعرض وتدفق JSON الكبير
غالباً ليس التحليل هو عنق الزجاجة؛ بل العرض والنسخ. حسّن على طول الطبقات الأربع "تحليل ← اجتياز ← عرض ← نقل" حتى لا يضيع جهدك.
ملف JSON بحجم عشرات الميغابايت يمكن أن يجمّد الخيط الرئيسي، وJSON مصمم بعناية يمكن أن يخترق خدمة؛ تغطي هذه الفئة كلاً من الإنتاجية ووسائل الحماية.
6 مقالةغالباً ليس التحليل هو عنق الزجاجة؛ بل العرض والنسخ. حسّن على طول الطبقات الأربع "تحليل ← اجتياز ← عرض ← نقل" حتى لا يضيع جهدك.
JSON.parse نفسه آمن؛ الخطر فيما يحدث بعده: الدمج العميق، والإسناد عبر المسار، والتضمين في HTML، والعمق والحجم غير المحدودين.
الضغط يقلل 30–50% من JSON الخام، لكن gzip يمحو معظم هذه المكاسب. أرقام مقاسة عبر أشكال حقيقية، إضافة إلى الحالات الأربع التي يجعل فيها minify الأمور أسوأ.
ملف JSON بحجم 10 ميغابايت يمكن أن يصبح 30-50 ميغابايت في كومة V8. تعرّف على التكلفة الفعلية للنصوص والكائنات والأرقام، وكيفية أخذ خط أساس عبر process.memoryUsage، ومتى يساعد التدفق.
يبدأ التقطّع عند إنشاء عقد DOM لا عند التمرير. يغطي العرض بالطي أولاً، والقوائم الافتراضية، وتمييز البحث وحدود Worker، مع مقاييس.
تصديرات JSON بحجم عشرات الميغابايتات تجمّد محررات النصوص والأدوات عبر الإنترنت غالبًا، بينما لا يستغرق التحليل نفسه سوى بضع مئات من أجزاء الثانية. قمنا بقياس الوقت والذاكرة في كل مرحلة لعينة بحجم 45 ميغابايت تحتوي على 500 ألف سجل، وأظهرنا أن التكلفة الحقيقية تكمن في عدد الأسطر والعُقد، ثم بنينا جدولًا لاختيار الأداة حسب حجم الملف: عارض عبر الإنترنت، سطر الأوامر، المعالجة التدفقية، وتطبيق سطح المكتب.