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

تُعرف بنية البرمجيات متعددة المستأجرين بأنها بنية برمجية تعمل فيها نسخة واحدة من البرنامج على خادم واحد وتخدم عدة مستأجرين. تُصمم الأنظمة بهذه الطريقة على أنها "مشتركة" (وليست "مخصصة" أو "معزولة"). المستأجر هو مجموعة من المستخدمين الذين يتشاركون وصولاً مشتركاً مع امتيازات محددة إلى نسخة البرنامج. في بنية متعددة المستأجرين، يُصمم تطبيق البرنامج بحيث يوفر لكل مستأجر حصة مخصصة من النسخة، بما في ذلك بياناته، وتكوينه، وإدارة المستخدمين، ووظائفه الفردية، وخصائصه غير الوظيفية . وتختلف بنية تعدد المستأجرين عن بنية النسخ المتعددة، حيث تعمل نسخ برمجية منفصلة نيابةً عن مستأجرين مختلفين. [ 1 ] يعتبر بعض المعلقين تعدد المستأجرين ميزة مهمة للحوسبة السحابية . [ 2 ] [ 3 ]

التبني

تاريخ تطبيقات متعددة المستأجرين

تطورت التطبيقات متعددة المستأجرين من ثلاثة أنواع من الخدمات، وهي تجمع بين بعض خصائصها:

  1. المشاركة الزمنية : منذ ستينيات القرن الماضي، استأجرت الشركات مساحة وقوة معالجة على أجهزة الكمبيوتر المركزية ( المشاركة الزمنية ) لتقليل نفقات الحوسبة. وكثيراً ما أعادت استخدام التطبيقات الموجودة، مع إضافة حقل إدخال منفصل على شاشة تسجيل الدخول لتحديد معرّف حساب العميل. وبناءً على هذا المعرّف، كان بإمكان محاسبي الكمبيوتر المركزي محاسبة العملاء الأفراد على استخدام وحدة المعالجة المركزية والذاكرة والقرص/الشريط الفعلي.
  2. التطبيقات المستضافة: منذ تسعينيات القرن الماضي، كان مزودو خدمات التطبيقات التقليديون يستضيفون التطبيقات (الموجودة آنذاك) نيابةً عن عملائهم. وتبعًا لقيود التطبيق الأساسي، اضطر مزودو خدمات التطبيقات إلى استضافة التطبيقات على أجهزة منفصلة (إذا تعذر تشغيل نسخ متعددة من التطبيقات على نفس الجهاز الفعلي) أو كعمليات منفصلة . تمثل التطبيقات متعددة المستأجرين بنية أكثر نضجًا [ 4 ] تُمكّن من تقديم خدمة مماثلة بتكلفة تشغيلية أقل.
  3. تطبيقات الويب : تطبيقات ويب شائعة موجهة للمستهلكين (مثل هوتميل ) تم تطويرها باستخدام نسخة تطبيق واحدة تخدم جميع العملاء. تمثل التطبيقات متعددة المستخدمين تطورًا طبيعيًا لهذا النموذج، حيث توفر تخصيصًا إضافيًا لمجموعات المستخدمين داخل (على سبيل المثال) نفس مؤسسة العميل.

العلاقة بالتقنية الافتراضية

في بيئة متعددة المستخدمين، يتشارك عدة عملاء نفس التطبيق، الذي يعمل على نفس نظام التشغيل ، وعلى نفس الأجهزة، وبنفس آلية تخزين البيانات. ويتم التمييز بين العملاء أثناء تصميم التطبيق، بحيث لا يتشارك العملاء بيانات بعضهم البعض ولا يرونها.

وهذا يتناقض مع المحاكاة الافتراضية ، حيث يتم تحويل المكونات بحيث يبدو أن كل تطبيق عميل يعمل على جهاز افتراضي منفصل.

مع ذلك، توفر المحاكاة الافتراضية مسارًا بديلًا لتعدد المستأجرين يتجنب التغييرات المعمارية الكبيرة: فبدلًا من إعادة تصميم تطبيق لخدمة عدة مستأجرين من نسخة واحدة، يمكن لمزود الخدمة استخدام تقنية المحاكاة الافتراضية لاستضافة نسخ معزولة متعددة من التطبيق على خادم واحد أو أكثر. وهذا أمر جذاب لأن إعادة تصميم تطبيق لتعدد المستأجرين قد تكون مكلفة، خاصةً لموردي البرامج الذين يواصلون أيضًا تقديم نسخة محلية أحادية المستأجر من منتجاتهم، والذين سيضطرون لولا ذلك إلى صيانة منتجين منفصلين. عند إعادة تغليف التطبيقات كأجهزة افتراضية ، يمكن نشر صورة الجهاز نفسها في مواقع مستضافة من قِبل موردي البرامج المستقلين، أو في مواقع محلية، أو لدى جهات خارجية موثوقة، ونقلها من موقع نشر إلى آخر بمرور الوقت.

اقتصاديات تعدد المستأجرين

توفير التكاليف

تتيح خاصية تعدد المستأجرين توفيرًا في التكاليف يتجاوز وفورات الحجم الأساسية التي يمكن تحقيقها من خلال دمج موارد تكنولوجيا المعلومات في عملية واحدة. [ 3 ] عادةً ما تتكبد نسخة التطبيق قدرًا معينًا من الذاكرة وتكاليف المعالجة، والتي قد تكون كبيرة عند تطبيقها على العديد من العملاء، خاصةً إذا كان عددهم قليلًا. تقلل خاصية تعدد المستأجرين هذه التكاليف الإضافية من خلال توزيعها على العديد من العملاء. قد تأتي وفورات إضافية في التكاليف من تكاليف ترخيص البرامج الأساسية (مثل أنظمة التشغيل وأنظمة إدارة قواعد البيانات). بعبارة أخرى، إذا كان بإمكانك تشغيل كل شيء على نسخة برمجية واحدة، فلن تحتاج إلا إلى شراء ترخيص برمجي واحد . قد تتضاءل هذه الوفورات في التكاليف بسبب صعوبة توسيع نطاق النسخة الواحدة مع نمو الطلب - إذ لا يمكن زيادة أداء النسخة على خادم واحد إلا من خلال شراء أجهزة أسرع، مثل وحدات معالجة مركزية سريعة، وذاكرة أكبر، وأنظمة أقراص أسرع، وعادةً ما تنمو هذه التكاليف بشكل أسرع مما لو تم تقسيم الحمل على خوادم متعددة ذات سعة إجمالية متقاربة. [ 5 ] بالإضافة إلى ذلك، فإن تطوير أنظمة متعددة المستأجرين [ 5 ] أكثر تعقيدًا، واختبار الأمان أكثر صرامة لأن بيانات العديد من العملاء يتم دمجها.

تعقيد

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

إدارة الإصدارات

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

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

هندسة البيانات

يُعدّ عزل بيانات كل مستأجر داخل وحدة التخزين المشتركة قرارًا تصميميًا أساسيًا في التطبيقات متعددة المستأجرين. وتُوصَف عادةً ثلاثة مناهج في هذا الشأن: [ 7 ]

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

نماذج عزل المستأجرين

على مستوى النشر، يتم وصف طريقة تخصيص الموارد للمستأجرين بشكل شائع باستخدام ثلاثة أنماط، مستمدة من إرشادات بنية SaaS الخاصة بخدمات أمازون السحابية : [ 8 ]

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

التحديات

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

أفضل الممارسات

بحسب مارك بروكر، في بنية متعددة المستأجرين، ينبغي تجميع أحمال العمل غير المترابطة وغير المرتبطة معًا. ذلك لأن دمج أحمال العمل المختلفة، ذات الاحتياجات والأنماط المتباينة، يُخفي أنماط كل حمل عمل. يُقلل تجميع أحمال العمل من نسبة ذروة الاستخدام إلى متوسطه في النظام ككل؛ إذ يُمكن لأحمال العمل الفردية استخدام المزيد من الموارد خلال أوقات الذروة دون زيادة ملحوظة في التكلفة الإجمالية للنظام، مما يُساعد بالتالي على تحقيق كفاءة أعلى في التكلفة. تجدر الإشارة إلى أن أحمال العمل المتعددة من نفس التطبيق أو العميل أو القطاع، تميل إلى العمل كحمل عمل واحد. [ 9 ]

متطلبات

التخصيص

تتطلب التطبيقات متعددة المستأجرين عادةً توفير درجة عالية من التخصيص لدعم احتياجات كل مؤسسة مستهدفة. يشمل التخصيص عادةً الجوانب التالية:

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

جودة الخدمة

من المتوقع أن توفر التطبيقات متعددة المستأجرين أمانًا كافيًا وقوة وأداءً جيدًا [ 10 ] بين المستأجرين المتعددين ، وهو ما توفره الطبقات الموجودة أسفل التطبيق في حالة التطبيقات متعددة النسخ.

مراجع

  1. كريبس، روفن (2012). "الاعتبارات المعمارية في تطبيقات SaaS متعددة المستأجرين" (ملف PDF) . وقائع المؤتمر الدولي الثاني حول الحوسبة السحابية وعلوم الخدمات (CLOSER 2012) . مؤتمر الحوسبة السحابية وعلوم الخدمات. SciTePress. مؤرشف من الأصل (ملف PDF) بتاريخ 21 فبراير 2015. تم الاطلاع عليه بتاريخ 21 فبراير 2015 .
  2. واينرايت، فيل (30 أكتوبر 2010). "تحديد المعنى الحقيقي للحوسبة السحابية" . ZDNet . CBS Interactive . تم الاطلاع عليه في 17 مارس 2016. تعدد المستأجرين . إن مشاركة نسخة تشغيلية واحدة مجمعة للبنية التحتية بأكملها من أعلى إلى أسفل ليست مجرد ميزة للبائع؛ بل هي الطريقة الوحيدة لتحقيق قابلية التوسع الحقيقية للحوسبة السحابية.
  3. 1 2 وايلدر، بيل (2012). أنماط بنية الحوسبة السحابية: استخدام مايكروسوفت أزور . دار نشر أورايلي ميديا، ص 78. ISBN  9781449357993في الحوسبة السحابية ، تعتبر الخدمات متعددة المستأجرين معيارًا: خدمات البيانات، وخدمات نظام أسماء النطاقات، والأجهزة للآلات الافتراضية، وموازنات الأحمال، وإدارة الهوية، وما إلى ذلك.
  4. ما هو نموذج نضج بنية البرمجيات كخدمة (SaaS)؟ فوربس، ٢٠ نوفمبر ٢٠١٩
  5. 1 2 كليمان، مارتن (2017). "الموثوقية، وقابلية التوسع، وسهولة الصيانة". تصميم التطبيقات كثيفة البيانات: الأفكار الرئيسية وراء الأنظمة الموثوقة، وقابلة التوسع، وسهلة الصيانة ( الطبعة الأولى). دار نشر أورايلي ميديا. الصفحات 18-19 . ISBN   978-1449373320.
  6. أولباخ، س. (2011). "قابلية التوسع ومشاركة البيانات في قواعد البيانات متعددة المستأجرين المتطورة". المؤتمر الدولي السابع والعشرون لهندسة البيانات ، معهد مهندسي الكهرباء والإلكترونيات، 2011. الصفحات 99-110 . doi : 10.1109/ICDE.2011.5767872 . ISBN  978-1-4244-8959-6. S2CID 17242970 . 
  7. تشونغ، فريدريك؛ كارارو، جيانباولو؛ وولتر، روجر (يونيو 2006). "بنية بيانات متعددة المستأجرين" (ملف PDF) . مكتبة MSDN . شركة مايكروسوفت.
  8. "نماذج الصوامع، والمجمعات، والجسور" . SaaS Lens – إطار عمل AWS المصمم جيدًا . خدمات أمازون السحابية . تم الاطلاع عليه بتاريخ 26 يونيو 2026 .
  9. بناء بنى برمجيات كخدمة متعددة المستأجرين . دار نشر أورايلي. 2024. رقم ISBN 9781098140601.
  10. زينغ، جيان (2014). المشاركة العادلة متعددة المستأجرين في مخازن بيانات NoSQL . المؤتمر الدولي لعام 2014 حول الحوسبة العنقودية (CLUSTER). IEEE. doi : 10.1109/CLUSTER.2014.6968761 .