الهندسة

كل ما صنّفناه تحت هذا التصنيف.

عنصران

أبراج مكاتب زجاجية متجاورة من منظور سفلي — منصة SaaS متعددة المستأجرين
الهندسة

SaaS متعدد المستأجرين بلا ألم

كل منصة SaaS ناجحة تصل إلى اللحظة نفسها: عشرات ثم مئات المستأجرين على البنية ذاتها، وسؤال واحد يحدد مستقبل المنتج — هل صُمم التعدد من الأساس أم رُقّع لاحقًا؟ الفارق بين الحالتين هو الفارق بين نمو هادئ وليالٍ من حوادث تسرب البيانات بين العملاء. في هذا المقال نلخص أنماط العزل والمصادقة والفوترة التي نطبقها في «الشبكة» عند بناء منصات متعددة المستأجرين تنمو بلا ألم.اختر نموذج العزل بوعي — لا بالمصادفةقرار العزل هو أهم قرار معماري في المنصة، وله ثلاثة أنماط رئيسية:قاعدة بيانات لكل مستأجر — أقوى عزل وأسهل امتثال، لكن كلفة تشغيلية تتضاعف مع كل عميل. مناسب للعملاء الكبار وقطاعات التنظيم الصارم.مخطط مشترك بمعرّف مستأجر — الأكفأ تشغيليًا والأسرع نموًا، لكنه يضع كل عبء العزل على انضباط الكود.هجين — مخطط مشترك للشريحة العامة، وقواعد مستقلة لمن يدفع مقابل العزل. النمط الذي تنتهي إليه أغلب المنصات الناضجة.لا يوجد نموذج «صحيح» — يوجد نموذج يطابق عملاءك اليوم ويترك الباب مفتوحًا لعملاء الغد.معرّف المستأجر يمر في كل طبقة — والدفاع متعدد الخطوطفي النموذج المشترك، أخطر حادثة ممكنة استعلام نسي شرط المستأجر فأظهر بيانات عميل لعميل آخر. الحماية لا تُترك للانتباه البشري بل تُبنى طبقات: سياق مستأجر إلزامي في كل طلب، وطبقة وصول للبيانات تضيف الشرط تلقائيًا ولا تسمح بتجاوزه، وأمان مستوى الصف (RLS) في قاعدة البيانات كخط دفاع أخير يعمل حتى لو أخطأ الكود.ثم اختبارات آلية تحاول عمدًا الوصول عبر الحدود بين مستأجرين — تفشل الإطلاقة في CI قبل أن تصل الثغرة للإنتاج.المصادقة: هوية المستخدم شيء وعضويته شيء آخرالنمط الذي يصمد: هوية واحدة للمستخدم، وعضويات متعددة في مستأجرين، وأدوار لكل عضوية. هذا يفتح الحالات الحقيقية بسلاسة — مستشار يعمل مع ثلاث شركات، وموظف ينتقل بين فريقين — دون حسابات مكررة. ومع أول عميل كبير سيأتي طلب SSO (تسجيل الدخول الموحد عبر SAML أو OIDC)؛ ابنِ نقطة التوصيل مبكرًا، فهي شرط صفقات لا ميزة رفاهية.الفوترة تبدأ من القياسلا يمكن فوترة ما لا تقيسه. من اليوم الأول، سجّل الاستخدام لكل مستأجر — المستخدمين النشطين، حجم التخزين، استدعاءات الواجهات، أو أي وحدة تعكس القيمة عندك — في مسار أحداث مستقل عن منطق الفوترة نفسه. بعدها تستطيع تركيب أي نموذج تسعير فوق البيانات: باقات، أو دفع بالاستخدام، أو مزيج، وتغييره لاحقًا دون إعادة بناء.واربط حدود الباقات بالإنفاذ الفعلي: الباقة التي تعد بعشرة مستخدمين يجب أن يفرضها النظام آليًا، مع رسالة ترقية مهذبة لا خطأ غامض.الجار المزعج: عدالة المواردفي البنية المشتركة، مستأجر واحد ثقيل — استيراد مليون سجل، أو تكامل مجنون — يمكن أن يبطئ المنصة على الجميع. الوقاية: حدود معدل لكل مستأجر لا للنظام كله، وطوابير معالجة تفصل الأحمال الثقيلة عن المسار التفاعلي، ومراقبة مقسمة بالمستأجر تكشف من يستهلك ماذا قبل أن يشتكي الآخرون.الترحيلات على أسطول قواعدإن اخترت قاعدة لكل مستأجر، فكل ترحيل مخطط يصبح عملية على أسطول: أتمتة تنفذ الترحيل تدريجيًا، وتتحقق من نجاحه لكل قاعدة، وتوقف الانتشار عند أول فشل. بدون هذه الأتمتة، سيتباعد المستأجرون في إصدارات المخطط — وهي فوضى يصعب العودة منها.قائمة تحقق للتعدد بلا ألمهل اخترت نموذج العزل قرارًا واعيًا موثقًا — لا افتراضًا ورثته؟هل يمر معرّف المستأجر إلزاميًا في كل طبقة، مع RLS كخط دفاع أخير؟هل الهوية منفصلة عن العضوية، ونقطة SSO جاهزة للعملاء الكبار؟هل تقيس الاستخدام لكل مستأجر من اليوم الأول، والحدود مُنفذة آليًا؟هل لديك حدود معدل لكل مستأجر ومراقبة مقسمة تكشف الجار المزعج؟الخلاصةتعدد المستأجرين ليس ميزة تضيفها لاحقًا، بل عدسة تصمم من خلالها كل طبقة: العزل، والهوية، والقياس، والعدالة التشغيلية. المنصات التي تبنيه من الأساس تنمو من عشرة عملاء إلى ألف بهدوء؛ والتي ترقّعه تدفع الثمن حوادث وثقة عملاء. الاستثمار المبكر هنا هو أرخص تأمين لمستقبل منتجك.في «الشبكة» نصمم منصات SaaS متعددة المستأجرين من الصفر ونعالج مشاكل التعدد في المنصات القائمة. إذا كنت تبني منصتك أو تستعد لعميلك الكبير الأول، تواصل معنا.

6 دقائق قراءة · 20 Jul 2026

حروف AI ثلاثية الأبعاد وسط شبكة رقمية — اختيار معمارية محايدة لنماذج الذكاء الاصطناعي
الهندسة

اختيار معمارية محايدة للنماذج

كل بضعة أشهر يظهر نموذج ذكاء اصطناعي جديد يتفوق على سابقه في القدرة أو السعر أو كليهما. المنتج الذي كتب استدعاءات مزوّد واحد في كل أنحاء الكود يجد نفسه أمام خيارين مؤلمين: إعادة كتابة واسعة، أو البقاء على نموذج متقادم يدفع ثمنه أداءً وتكلفة. المعمارية المحايدة للنماذج (Model-Agnostic) تحل هذه المعضلة من الأساس: تبني منتجك مرة واحدة، وتبدّل النماذج تحته بحرّية. في هذا المقال نشرح كيف نصمم هذه الطبقة في «الشبكة» وما الذي تعلمناه من تشغيلها في منتجات حقيقية.لماذا الحياد قرار استراتيجي لا ترف تقني؟ثلاثة أسباب تجعل الارتباط الصلب بمزوّد واحد مخاطرة: أولًا، السباق محتدم — النموذج الأفضل اليوم قد يصبح الثالث خلال أشهر. ثانيًا، الأسعار تتحرك باستمرار، وفارق التكلفة بين نموذجين قادرين على المهمة نفسها قد يصل إلى عشرة أضعاف. ثالثًا، متطلبات الامتثال وإقامة البيانات قد تفرض غدًا نموذجًا يعمل داخل حدودك الجغرافية أو بنيتك الخاصة.اربط منتجك بالمهمة التي يحلها، لا بالنموذج الذي يشغّلها اليوم.طبقة تجريد واحدة تفصل المنتج عن المزوّدالقاعدة الأولى: لا يستدعي كود المنتج مزوّدًا مباشرة أبدًا. كل الاستدعاءات تمر عبر واجهة داخلية موحدة تتولى ترجمة الطلب لصيغة كل مزوّد، وتوحيد صيغ الردود واستدعاءات الأدوات، ومعالجة الأخطاء وإعادة المحاولة والتبديل الاحتياطي عند تعطل مزوّد.الواجهة تعرّف بمصطلحات منتجك — «لخّص»، «صنّف»، «استخرج» — وتحتها يعيش ملف إعدادات يحدد أي نموذج يخدم أي مهمة. تغيير النموذج يصبح تعديل سطر إعدادات، لا مشروع إعادة كتابة.وجّه كل مهمة إلى النموذج الذي تستحقهليس كل استدعاء يحتاج أقوى نموذج وأغلاه. التوجيه الذكي يصنّف المهام:المهام المعقدة — تحليل عميق، توليد كود، استدلال متعدد الخطوات: النموذج الأقوى.المهام الحجمية — تصنيف، استخراج حقول، صياغة قصيرة: نموذج صغير سريع بجزء يسير من التكلفة.المهام الحساسة — بيانات لا تغادر بنيتك: نموذج مستضاف ذاتيًا أو داخل المنطقة الجغرافية المطلوبة.في منتجات كثيرة، 80% من الاستدعاءات مهام حجمية يمكن أن يخدمها نموذج أرخص بجودة مماثلة — والتوجيه وحده يخفض الفاتورة أضعافًا.البرومبتات أصول تُدار — لا نصوص مبعثرةالتبديل الحر يفترض أن التوجيهات نفسها قابلة للنقل. نخزّن البرومبتات خارج الكود، بإصدارات وتاريخ تغييرات، ونسمح بنسخ مخصصة لكل نموذج عند الحاجة — لأن الصياغة المثلى تختلف بين النماذج. النتيجة: تجربة نموذج جديد لا تلمس كود المنتج إطلاقًا.التقييم هو صمام الأمانلا معنى لحرية التبديل بدون وسيلة تخبرك هل التبديل آمن. لكل مهمة نبني مجموعة تقييم من حالات حقيقية بمعايير نجاح واضحة، وأي نموذج مرشح يمر عليها قبل أن يلمس الإنتاج. الأرقام تحسم النقاش: جودة مكافئة أو أفضل، بتكلفة أقل، بزمن استجابة مقبول — أو لا تبديل.وبعد التبديل، تستمر المراقبة في الإنتاج على عيّنات حقيقية، لأن سلوك النموذج مع بياناتك الفعلية قد يختلف عن نتائج مجموعة التقييم.تحذير: لا تفرط في الهندسةالحياد لا يعني بناء منصة ضخمة من اليوم الأول. إن كان منتجك يستدعي نموذجًا واحدًا في موضعين، تكفيك دالة مغلّفة واحدة وملف برومبتات منظم. ابنِ الطبقة الكاملة حين تتعدد المهام والنماذج فعلًا — الحياد عادة معمارية تبدأ صغيرة، لا مشروعًا مسبقًا ضخمًا.قائمة تحقق للمعمارية المحايدةهل يمر كل استدعاء نموذج عبر طبقة تجريد داخلية واحدة؟هل يحدد ملف إعدادات — لا الكود — أي نموذج يخدم أي مهمة؟هل برومبتاتك مخزنة بإصدارات وقابلة للتخصيص لكل نموذج؟هل لديك مجموعة تقييم لكل مهمة تحسم قرارات التبديل بالأرقام؟هل تتبع التكلفة وزمن الاستجابة لكل مهمة ونموذج في الإنتاج؟الخلاصةسوق النماذج سيبقى متحركًا لسنوات، والرابح ليس من يراهن على الحصان الصحيح، بل من يبني عربة تُبدّل أحصنتها بسهولة. طبقة تجريد نظيفة، وتوجيه حسب المهمة، وبرومبتات مُدارة، وتقييم يحسم القرارات — بهذه العناصر يصبح كل نموذج جديد فرصة تلتقطها في أيام، لا تهديدًا يستدعي إعادة بناء.في «الشبكة» نصمم معماريات الذكاء الاصطناعي للمنتجات التي تريد الاستفادة من السباق لا الاحتراق به. إذا كان منتجك مرتبطًا بمزوّد واحد وتريد فك الارتباط بأمان، تواصل معنا.

6 دقائق قراءة · 20 Jul 2026