
تصميم برنامج يعمل لمئة مستخدم أمر بسيط. أما تصميم برنامج يعمل لمئة ألف مستخدم، ويحافظ على اتساق البيانات في ظل عمليات الكتابة المتزامنة، ويتعافى بشكل سلس من إخفاقات البنية التحتية ؛فهذا تخصص هندسي قائم بذاته. وتجلب ويكوبارس هذا التخصص لكل نظام تُصمم بنيته.
نتخصص في أخذ الأنظمة التي وصلت إلى سقف بنيتها الحالية وإعادة تصميمها للدرجة التالية من الحجم ؛سواء أعني ذلك تقديم التوسع الأفقي، أو تقسيم نظام متكامل إلى خدمات بحجم مناسب، أو إعادة تصميم طبقة البيانات لدعم الأعباء كثيفة القراءة أو الكتابة بكفاءة.
أنماط قابلية التوسع التي نطبقها
بحسب الاختناقات الخاصة بنظامك، نطبق أنماطاً مُثبَتة: نسخ القراءة وتحسين الاستعلامات للأنظمة المقيدة بقاعدة البيانات، وتكامل CDN والتخزين المؤقت على الحافة للمنصات كثيفة المحتوى، والبنيات المدفوعة بالأحداث للأنظمة التي تحتاج إلى فصل المنتجين عن المستهلكين، وموازنة التحميل مع مجموعات التوسع التلقائي للنشر المتغير بالمرور.
نجري اختبار الحمل كجزء معياري من كل مشاركة قابلية التوسع، ونحدد خطاً أساسياً واضحاً ونتحقق من أن تغييرات البنية تحقق التحسينات المنشودة قبل وصولها إلى الإنتاج.
الموثوقية وتحمل الأخطاء
قابلية التوسع والموثوقية مخاوف متكاملة. النظام الذي يتوسع للتعامل مع ذروة حركة المرور لكنه يفشل عند انقطاع خدمة واحدة ليس موثوقاً بالفعل. نصمم لعزل الأخطاء ؛ضماناً أن يُدهور الفشل في نظام فرعي واحد التطبيق بشكل سلس بدلاً من التسبب في انقطاع كامل.
يشمل ذلك قواطع دائرة للتبعيات الخارجية، ونقاط نهاية فحص الصحة لجميع الخدمات، وإجراءات الإيقاف السلس، وتوثيق دليل التشغيل الذي يمكن لفريقك استخدامه للاستجابة للحوادث بفعالية.
