Ahmed Eldegla

System Design

System Design… الكلمة اللي بتخوّف أي developer. بس الحقيقة؟ هي أسهل من كده بكتير.

Ahmed EldeglaBackend Developer

متوسط1 دقيقة قراءة

#systendesign

System Design: أسهل مما تتخيل!

الـ System Design الكلمة اللي بتخوّف أي Developer.. بس الحقيقة؟ هي أسهل من كده بكتير.

تعالى أوريك بمثال بسيط جداً:

تخيّل عندك مطعم كشري، وفجأة ألف زبون واقفين على الباب في نفس اللحظة!

  • طبّاخ واحد بس؟ ده بالضبط السيرفر بتاعك لما الترافيك يزيد فجأة.
  • طب الحل إيه؟ أول فكرة هتيجي في بالك إنك تجيب طباخين كمان يشتغلوا معاه؛ وده في علم النظم اسمه:

    Horizontal Scaling


المشكلة التانية: الزحمة مين هينظمها؟

الزبائن واقفين قدام الطباخين ومحدش عارف يروح لمين وكلهم بيتزاحموا على نفس الطباخ!

هنا هتحتاج تجيب راجل يقف على الباب يقول:

  • "إنت ادخل للأول.."
  • "وإنت ادخل للتاني.."

الراجل المنظم ده اسمه تقنياً:

Load Balancer


وسر السرعة؟

بعد شوية هتلاحظ إن فيه أطباق كل الناس بتطلبها باستمرار. فبدل ما كل شوية تدخل تجيب المكونات من المخزن البعيد، بتجهز الأطباق دي وتحطها على الرخامة قدامك فوراً.

  • الرخامة الجاهزة السريعة: دي هي الـ Cache.
  • المخزن الرئيسي اللي جواه كل البيانات: ده الـ Database.

الخلاصة

طباخين، ومنظم على الباب، ورخامة جاهزة، ومخزن.. هو ده الـ System Design ببساطة من غير تعقيد.

ده كان أول Deep Dive، وفي المقال الجاي هنتكلم بالتفصيل عن عمنا: الـ Load Balancer.

آخر تحديث ٢٠ أكتوبر ٢٠٢٦ · كل المقالات