Skip to main content
AI EducademyAIEducademy
🌳

أسس الذكاء الاصطناعي

🌱
AI Seeds

إلمام بالذكاء الاصطناعي في الواقع العملي

🌿
AI Sprouts

الأسس التي تقوم عليها الأنظمة الذكية

🌳
AI Branches

ابنِ بقدرات الذكاء الاصطناعي المتاحة اليوم

🏕️
AI Canopy

هندسة أنظمة ذكاء اصطناعي توليدي موثوقة

🌲
AI Forest

أطلق منتجات ذكاء اصطناعي بمسؤولية

🔨

إتقان الذكاء الاصطناعي

✏️
AI Sketch

أسس هندسية لبُناة الذكاء الاصطناعي

🪨
AI Chisel

أنماط لحل المسائل الأصعب

⚒️
AI Craft

صمّم أنظمة تُوسّع الذكاء الاصطناعي

💎
AI Polish

تواصل وقُد في عصر الذكاء الاصطناعي

🏆
AI Masterpiece

مشروع تخرّجك الإنتاجي في الذكاء الاصطناعي

🚀

جاهز للمسيرة المهنية

🚀
منصة انطلاق المقابلات

تنقّل في سوق وظائف هندسة الذكاء الاصطناعي

🌟
إتقان المقابلات السلوكية

احكِ قصة كيف تصنع الأثر

💻
المقابلات التقنية

حُلّ وصمّم وتواصل تحت الضغط

🤖
مقابلات الذكاء الاصطناعي وتعلم الآلة

استعد لمقابلات تعلّم الآلة والذكاء الاصطناعي التوليدي الحديثة

🏆
العرض وما بعده

اتخذ خطوتك التالية بثقة واطّلاع

عرض كل البرامج→

المختبر

تم تحميل 7 تجارب
🧠ملعب الشبكة العصبية🤖ذكاء اصطناعي أم إنسان؟💬مختبر التوجيهات🎨مولّد الصور😊محلل المشاعر💡باني روبوت الدردشة⚖️محاكي الأخلاقيات
🎯مقابلة تجريبيةدخول المختبر→
الرحلةالمدونة
🎯
عن المنصة

جعل تعليم الذكاء الاصطناعي متاحاً للجميع في كل مكان

❓
الأسئلة الشائعة

إجابات على الأسئلة الشائعة

🧰
أدوات الذكاء الاصطناعي

أدوات مختارة نستخدمها ونوصي بها

✉️
تواصل

تواصل معنا

⭐
مفتوح المصدر

مبني علناً على GitHub

الأسعار
ابدأ الآن
AI EducademyAIEducademy

© 2026 AI Educademy. جميع الحقوق محفوظة.

تعلّم

  • البرامج الأكاديمية
  • الدروس
  • المختبر
  • مجموعة أدوات الذكاء الاصطناعي للمبتدئين
  • الأسعار

المجتمع

  • GitHub
  • المساهمة
  • قواعد السلوك
  • عن المنصة
  • الأسئلة الشائعة

الدعم

  • اشترِ لي قهوة ☕
  • شروط الخدمة
  • سياسة الخصوصية
  • اتصل بنا
  • Sitemap
البرامج الأكاديمية للذكاء الاصطناعي والهندسة›⚒️ AI Craft›الدروس›أساسيات تصميم النظام - اللبنات الأساسية للأنظمة القابلة للتطوير
🏗️
AI Craft • متقدم⏱️ 20 دقيقة للقراءة

أساسيات تصميم النظام - اللبنات الأساسية للأنظمة القابلة للتطوير

🤖

تُرجِمت هذه الدروس تلقائيًا إلى العربية ولم تخضع بعد لمراجعة بشرية. إذا بدت أي صياغة غريبة، فالنسخة الإنجليزية هي المرجع.

لماذا يهم تصميم النظام

يتم تجميع كل تطبيق واسع النطاق من نفس العناصر الأساسية. لا يتوقع القائمون على إجراء المقابلات منك أن تخترع تقنية جديدة - بل يريدون رؤيتك تختار وتجمع المكونات المناسبة لمشكلة معينة. يغطي هذا الدرس مجموعة الأدوات التي ستستخدمها في كل مقابلة تصميم.

بنية خادم العميل

يتبع الويب في جوهره نموذجًا بسيطًا: العملاء يرسلون الطلبات، والخوادم تعالجها، وتتدفق الاستجابات مرة أخرى. لكن الأنظمة الحديثة تضيف طبقات بين هاتين النقطتين للتعامل مع الحجم والموثوقية والأداء.

قد يجتاز الطلب النموذجي: العميل → CDN → موازن التحميل → بوابة API → خادم التطبيق → ذاكرة التخزين المؤقت → قاعدة البيانات. تحل كل طبقة مشكلة معينة، وفهم متى تكون هناك حاجة إلى كل طبقة يفرق بين المرشحين الأقوياء والمرشحين العاديين.

💡

في المقابلات، ابدأ دائمًا برسم مخطط تدفق العميل والخادم عالي المستوى قبل الغوص في التفاصيل. ويظهر التفكير المنظم.

موازنات التحميل: توزيع حركة المرور

خادم واحد لديه قدرة محدودة. تقوم موازنات التحميل بتوزيع الطلبات الواردة عبر خوادم متعددة باستخدام إستراتيجيات مثل:

  • Round-robin - تتنقل الطلبات عبر الخوادم بشكل تسلسلي
  • اتصالات أقل - مسارات إلى الخادم الذي يتعامل مع أقل عدد من الطلبات النشطة
  • تجزئة متسقة - تعيين الطلبات إلى خوادم محددة بناءً على مفتاح (مفيد للتخزين المؤقت)

تقوم موازنات التحميل أيضًا بإجراء فحوصات السلامة، مما يؤدي تلقائيًا إلى إزالة الخوادم غير السليمة من المجموعة. في البيئات السحابية، تتعامل خدمات مثل AWS ALB أو Azure Front Door مع هذا الأمر بشفافية.

🧠فحص سريع

تتلقى خدمة موجز الوسائط الاجتماعية قراءات أكثر بـ 10 مرات من الكتابة. ما هو أسلوب موازنة التحميل الأفضل الذي يضمن للمستخدمين الوصول باستمرار إلى نفس خادم التخزين المؤقت الدافئ؟

التخزين المؤقت: السرعة في كل طبقة

تقوم مخازن التخزين المؤقت بالوصول إلى البيانات بشكل متكرر بالقرب من المستهلك. وهي موجودة على مستويات متعددة:

| طبقة | مثال | الكمون | |-------|---------|---------| | ذاكرة التخزين المؤقت للمتصفح | الأصول الثابتة واستجابات واجهة برمجة التطبيقات | ~0 مللي ثانية | | CDN | الصور، ملفات CSS، JS | ~10-50 مللي ثانية | | ذاكرة التخزين المؤقت للتطبيق | ريديس، ممكاشد | ~1-5 مللي ثانية | | ذاكرة التخزين المؤقت لقاعدة البيانات | ذاكرة التخزين المؤقت لنتيجة الاستعلام | ~5-10 مللي ثانية |

الدرس 1 من 100٪ مكتمل
←العودة للبرنامج
متابعة: تصميم أداة تقصير عناوين URL - أول مقابلة لك مع تصميم النظام→

النقاش

سجّل الدخول للانضمام إلى النقاش

اقترح تعديلاً على هذا الدرس

يعد إبطال ذاكرة التخزين المؤقت أحد أصعب المشكلات في مجال الحوسبة. تتضمن الاستراتيجيات الشائعة TTL (مدة البقاء) والكتابة (تحديث ذاكرة التخزين المؤقت عند كل عملية كتابة) وذاكرة التخزين المؤقت جانبًا (يدير التطبيق ذاكرة التخزين المؤقت بشكل صريح).

🤯

مقولة فيل كارلتون الشهيرة - "هناك شيئان صعبان فقط في علوم الكمبيوتر: إبطال ذاكرة التخزين المؤقت وتسمية الأشياء" - يتم الاستشهاد بها على نطاق واسع لدرجة أنها عمليًا طقوس المرور في مقابلات تصميم النظام.

قواعد البيانات: SQL مقابل NoSQL

يعد اختيار قاعدة البيانات الصحيحة أحد قرارات التصميم الأكثر تأثيرًا:

قواعد بيانات SQL (PostgreSQL وMySQL) توفر معاملات ACID واتساقًا قويًا ومخططات منظمة. إنها تتفوق عندما تكون للبيانات علاقات واضحة وتحتاج إلى استعلامات معقدة ذات صلات.

قواعد بيانات NoSQL تأتي بعدة أشكال:

  • مخازن المستندات (MongoDB) - مخططات مرنة، رائعة لهياكل البيانات المتنوعة
  • مخازن القيمة الرئيسية (DynamoDB، وRedis) - عمليات بحث سريعة للغاية عن طريق المفتاح
  • مخازن ذات أعمدة واسعة (كاساندرا) - إنتاجية كتابة هائلة، موزعة حسب التصميم
  • قواعد بيانات الرسم البياني (Neo4j) - بيانات كثيفة العلاقات مثل الشبكات الاجتماعية
🧠فحص سريع

أنت تصمم نظامًا يخزن ملفات تعريف المستخدمين ببيانات شبه منظمة تتغير بشكل متكرر (حقول مختلفة لكل نوع مستخدم). ما هو نوع قاعدة البيانات الأكثر ملائمة؟

قوائم انتظار الرسائل: معالجة غير متزامنة

ليست كل عملية تحتاج إلى استجابة فورية. تعمل قوائم انتظار الرسائل (RabbitMQ، وApache Kafka، وAWS SQS) على فصل المنتجين عن المستهلكين، مما يتيح:

  • معالجة غير متزامنة - إرسال بريد إلكتروني بعد الاشتراك دون حظر الرد
  • تسوية التحميل - استيعاب الزيادات في حركة المرور عن طريق تخزين الطلبات مؤقتًا
  • التسامح مع الخطأ - في حالة تعطل العميل، تنتظر الرسائل في قائمة الانتظار

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

رسم تخطيطي للبنية يُظهر العميل وموازن التحميل وخوادم التطبيقات وطبقة ذاكرة التخزين المؤقت وقاعدة البيانات وقائمة انتظار الرسائل
اللبنات الأساسية لنظام قابل للتطوير - تتناول كل طبقة اهتمامًا محددًا.

الخدمات المصغرة مقابل مونوليث

| الجانب | متراصة | الخدمات المصغرة | |--------|----------|---------------| | النشر | وحدة واحدة | خدمات مستقلة | | التحجيم | مقياس كل شيء معًا | نطاق الخدمات الفردية | | التعقيد | أسهل للبدء | النفقات التشغيلية | | البيانات | قاعدة بيانات مشتركة | قاعدة بيانات لكل خدمة |

ابدأ بوحدة متراصة، واستخرج الخدمات الصغيرة عند الحاجة. يقدّر معظم القائمين على المقابلات المرشحين الذين يعترفون بأن الخدمات الصغيرة تقدم تعقيدًا للنظام الموزع (فشل الشبكة، واتساق البيانات، وتنسيق النشر) ولا تكون دائمًا الخيار الصحيح.

🤔
Think about it:

لقد انتقلت Netflix بشكل مشهور من الخدمات المتجانسة إلى الخدمات الصغيرة على مدار عدة سنوات. لكن Shopify - الذي يتعامل مع المليارات من المعاملات - لا يزال يدير وحدة متراصة معيارية. ما هي العوامل التي قد تجعل أحد النهجين أفضل من الآخر بالنسبة لشركة معينة؟

نظرية CAP المبسطة

تنص نظرية CAP على أن النظام الموزع يمكنه ضمان اثنتين فقط من ثلاث خصائص في وقت واحد:

  • الاتساق - كل قراءة تُرجع أحدث كتابة
  • التوفر - يتم الرد على كل طلب
  • التسامح مع التقسيم - يستمر النظام في العمل على الرغم من فشل الشبكة

نظرًا لأن أقسام الشبكة أمر لا مفر منه في الأنظمة الموزعة، فإن الاختيار الحقيقي هو بين CP (الاتساق على التوفر) و AP (التوافر على الاتساق).

  • أنظمة CP (على سبيل المثال، HBase وMongoDB مع قراءات الأغلبية) - إرجاع الأخطاء بدلاً من البيانات القديمة
  • أنظمة AP (على سبيل المثال، Cassandra وDynamoDB) - تستجيب دائمًا، ولكن قد تكون البيانات قديمة بعض الشيء
🧠فحص سريع

أنت تقوم بتصميم نظام معاملات مصرفية حيث يمكن أن تتسبب الأرصدة غير الصحيحة في خسارة مالية. ما هي مقايضة CAP التي يجب أن تعطيها الأولوية؟

إطار المقابلة

عندما تدخل إلى مقابلة تصميم النظام، اتبع هذا الهيكل:

  1. المتطلبات - توضيح المتطلبات الوظيفية وغير الوظيفية (5 دقائق)
  2. تصميم واجهة برمجة التطبيقات - تحديد نقاط النهاية أو الواجهات الرئيسية (5 دقائق)
  3. نموذج البيانات - اختر قواعد البيانات وحدد المخططات (5 دقائق)
  4. هندسة عالية المستوى - رسم النظام باستخدام العناصر الأساسية الحالية (10 دقائق)
  5. التعمق في الأمر - قياس الاختناقات والتعامل مع حالات الفشل وتحسينها (15 دقيقة)
🤔
Think about it:

فكر في النظام الذي تستخدمه يوميًا - Instagram أو Uber أو Spotify. هل يمكنك تحديد العناصر الأساسية التي من المحتمل أن يستخدمها هذا الدرس؟ أين سيجلس موازن التحميل؟ ما الذي سيتم تخزينه مؤقتًا؟ ما هو نوع قاعدة البيانات الذي يناسب نموذج البيانات الخاص به؟

الوجبات السريعة الرئيسية

  • يستخدم كل نظام قابل للتطوير نفس العناصر الأساسية - تعلمها مرة واحدة، وقم بتطبيقها في كل مكان
  • تعمل موازنات التحميل وذاكرة التخزين المؤقت وقوائم انتظار الرسائل على حل تحديات التوسع المميزة
  • يعتمد اختيار قاعدة البيانات (SQL vs NoSQL) على شكل البيانات واحتياجات الاتساق وأنماط الوصول
  • تفرض نظرية CAP المقايضات - تعرف على الجانب الذي يجب أن يفضله نظامك
  • اتبع إطار المقابلة المنظم: المتطلبات → واجهة برمجة التطبيقات (API) → البيانات → الهندسة المعمارية → الغوص العميق

الخطوة التالية: سنطبق هذه الأساسيات لتصميم أداة تقصير عناوين URL من البداية.