مقالات عملية مرتبة حسب المجال والمستوى، اختر المجال المناسب واقرأ من مستوى مبتدئ إلى محترف.
CREATE INDEX على جدول 100 مليون صف ممكن ياخد 6 ساعات ويأكل 38 جيجا قرص. HypoPG extension في PostgreSQL بيخلّيك تعمل EXPLAIN ANALYZE على Index وهمي في 80 مللي ثانية، تعرف لو الـ Query Planner هيستخدمه أصلاً قبل ما تدفع تذكرة الـ downtime. مقال للمحترف بمثال مهندس الديكور للتقريب، تعريف من توثيق HypoPG 1.4 الرسمي، كود SQL شغّال على PostgreSQL 16 + HypoPG 1.4، أرقام مقاسة من إنتاج API بـ 18,400 طلب/دقيقة، 4 trade-offs خفية، ومتى HypoPG بيكون مضيعة وقت.
Index على عمياني مش حل، هو غالباً مصدر بطء جديد. EXPLAIN ANALYZE بيوريك بالظبط ليه الـ query بياخد 2.8 ثانية وإيه الـ operation اللي بياكل الوقت، قبل ما تكتب CREATE INDEX تاني.
لو فاتورة الـ CDN Egress زادت بدون ما المحتوى يتغير، Brotli بـ 4 سطور في NGINX 1.25 بيقلل حجم JS و CSS و HTML بنسبة 17-26% فوق Gzip level 6. مقال للمحترف بشرح علمي للـ static dictionary بتاع Brotli، تجربة مقاسة على bundle.js حجمه 412KB، إعداد كامل قابل للنسخ، أرقام إنتاج من e-commerce بـ 2.4M زائر شهريًا، 4 trade-offs خفية، ومتى Brotli بيكون كارثة بدل ما يفيد.
لو endpoint Django بياخد 5.2 ثانية وبيفتح 320 query على request واحد، الـ ORM مش بطيء — هو بيتعامل مع كل ForeignKey كزيارة منفصلة لـ DB. select_related و prefetch_related و Subquery بـ 4 سطور بيرجّعوا الزمن لـ 380ms. مقال للمحترف بمثال ساعي البريد للمبتدئ، تعريف من توثيق Django 5.0 الرسمي، كود Python شغّال على Django 5.0 + PostgreSQL 16، أرقام مقاسة من إنتاج e-commerce بـ 5,200 طلب/يوم، 4 trade-offs خفية، ومتى prefetch_related بيكسر بدل ما يحسّن.
لو Lambda function بياخد 3.2 ثانية على أول طلب وP99 latency بيقفز فوق 4 ثواني، المشكلة مش في الكود — هي في الـ Init Phase. SnapStart في 4 سطور إعداد بينزّل الزمن لـ 180 مللي ثانية على Python 3.12+ و Java 21، بدون تعديل سطر كود وبدون تكلفة شهرية ثابتة زي Provisioned Concurrency. مقال للمحترف بمثال محل القهوة للمبتدئ، تعريف علمي من AWS Compute Blog، ملف SAM template شغّال، أرقام مقاسة من Spring Boot وPython، 4 trade-offs، ومتى لا تستخدمه.
TCP بياخد 3 رحلات للسيرفر قبل ما أول بايت يطلع. على 4G في القاهرة بـ RTT 180ms، ده 540ms ضايعة. HTTP/3 على QUIC بينزّل ده لرحلة واحدة (وصفر في الزيارة الثانية بـ 0-RTT)، فالـ TTFB بيقل بحوالي 240ms على نفس الكود. مقال للمحترف بمثال طابور الجمارك للمبتدئ، تعريف من RFC 9114، إعداد NGINX 1.25 و Caddy، أرقام من Cloudflare وفيس بوك، 4 trade-offs، ومتى ما تتحوّلش.
INP بقى Core Web Vital أساسي من مارس 2024 وبيقيس أسوأ تأخير في تفاعلات الزائر مع صفحتك. لو P95 INP فوق 200ms، Google بيصنّف الصفحة Poor وبيأثر مباشرة على ترتيب البحث. هنا حل بـ scheduler.yield و isInputPending نزّل P95 من 480ms لـ 95ms على نفس الكود تقريبًا، بأرقام مقاسة من إنتاج على Pixel 6a/Chrome 130.
على جدول events فيه 200 مليون صف، B-tree index على created_at بياكل 14GB. BRIN Index بياخد 1.2MB ويرد على query آخر 24 ساعة في 38 مللي ثانية بدل 4.2 ثانية. شرح للمحترف بمثال السجل المالي للمبتدئ، تعريف علمي من توثيق PostgreSQL 16، كود قابل للنسخ، أرقام مقاسة على NVMe SSD، 4 trade-offs، ومتى لا تستخدمه.
الـ Cache بتاعك بيشتغل تمام لمدة ساعة، وفجأة في ثانية واحدة الـ DB بياخد آلاف الطلبات المتزامنة وبيقع. السبب مش traffic spike، السبب اسمه Cache Stampede. مقال للمحترف بمثال السوبر ماركت للمبتدئ، تعريف علمي دقيق من ورقة Vattani VLDB 2015، تلاتة حلول قابلة للنسخ (Mutex Lock، XFetch، Stale-While-Revalidate)، أرقام مقاسة على 5000 RPS، 4 trade-offs، ومتى لا تستخدم أي منها.