تعدد المستأجرين وتكوين تطبيق Azure
يمكنك Azure App Configuration من تخزين إعدادات التكوين للتطبيق الخاص بك. باستخدام Azure App Configuration، يمكنك بسهولة تنفيذ نمط مخزن التكوين الخارجي. في هذه المقالة، نصف بعض ميزات Azure App Configuration المفيدة عند العمل مع الأنظمة متعددة المستأجرين، ونربط بإرشادات وأمثلة حول كيفية استخدام Azure App Configuration في حل متعدد المستأجرين.
نماذج العزل
يشير المتجر إلى مثيل واحد لخدمة Azure App Configuration.
في حل متعدد المستأجرين، من الشائع أن يكون لديك نوعان من الإعدادات:
الإعدادات المشتركة هي تلك التي تنطبق على مستأجرين متعددين، مثل الإعدادات العمومية أو الإعدادات التي تنطبق على جميع المستأجرين داخل طابع التوزيع. غالبا ما يتم تخزين الإعدادات العمومية بشكل أفضل داخل متجر App Configuration مشترك. باتباع هذا الأسلوب، يمكنك تقليل عدد الأماكن التي تحتاج إلى تحديثها عند تغيير قيمة إعداد. يقلل هذا الأسلوب أيضا من خطر خروج الإعدادات من المزامنة.
الإعدادات الخاصة بمستأجر، مثل اسم قاعدة بيانات كل مستأجر أو معرفات داخلية. أو، قد تحتاج إلى تحديد مستويات سجل مختلفة لكل مستأجر، مثل عند تشخيص مشكلة تم الإبلاغ عنها من قبل مستأجر معين وتحتاج إلى جمع سجلات التشخيص من هذا المستأجر الواحد. يمكنك اختيار ما إذا كنت تريد دمج الإعدادات الخاصة بالمستأجر لعدة مستأجرين في متجر واحد، أو نشر متجر لكل مستأجر. يجب أن يستند هذا القرار إلى متطلباتك. إذا كان الحل الخاص بك يستخدم طبقة تطبيق مشتركة واحدة لعدة مستأجرين، فمن المحتمل أن تكون هناك فائدة ضئيلة لاستخدام متاجر خاصة بمستأجر. ولكن إذا قمت بنشر مثيلات تطبيق خاصة بالمستأجر، فقد تختار عكس نفس النهج عن طريق نشر مخازن التكوين الخاصة بالمستأجر.
يلخص الجدول التالي الاختلافات بين نماذج عزل الإيجار الرئيسية لتكوين تطبيق Azure:
الاعتبار | مخزن مشترك | المتجر لكل مستأجر |
---|---|---|
عزل البيانات | منخفض. استخدام البادئات أو التسميات الرئيسية لتحديد بيانات كل مستأجر | درجة عالية |
عزل الأداء | منخفض | مرتفع |
تعقيد التوزيع | منخفض | متوسط-عال |
التعقيد التشغيلي | منخفض | متوسط-عال |
تكلفة المورد | منخفض | متوسط-عال |
مثال على السيناريو | حل كبير متعدد المستأجرين مع مستوى تطبيق مشترك | مستأجرو المستوى المتميز مع عمليات نشر معزولة تماما |
المتاجر المشتركة
يمكنك نشر مخزن Azure App Configuration مشترك للحل بأكمله، أو مخزن لكل طابع. يمكنك بعد ذلك استخدام نفس المتجر لجميع إعدادات المستأجرين، ويمكنك استخدام بادئات المفاتيح أو التسميات لتمييزها.
إذا كنت بحاجة إلى تخزين كمية كبيرة من البيانات لكل مستأجر، أو إذا كنت بحاجة إلى التوسع إلى عدد كبير من المستأجرين، فقد تكون عرضة لخطر تجاوز أي من حدود الموارد لمتجر واحد. في هذا السيناريو، ضع في اعتبارك ما إذا كان يمكنك تقسيم المستأجرين عبر مجموعة من المتاجر المشتركة، لتقليل تكاليف النشر والإدارة.
إذا اتبعت هذا الأسلوب، فتأكد من فهم الحصص النسبية للموارد والحدود التي تنطبق. على وجه الخصوص، ضع في اعتبارك الحد الإجمالي للتخزين لمستوى الخدمة الذي تستخدمه، وتأكد من أنك لن تتجاوز الحد الأقصى للطلبات في الساعة.
المتاجر لكل مستأجر
يمكنك بدلا من ذلك اختيار توزيع مخزن Azure App Configuration لكل مستأجر. تمكنك الطبقة القياسية لتكوين تطبيق Azure من نشر عدد غير محدود من المتاجر في اشتراكك. ومع ذلك، غالبا ما يكون هذا الأسلوب أكثر تعقيدا للإدارة، لأنه يجب عليك نشر المزيد من الموارد وتكوينها. هناك أيضا رسوم لكل مورد متجر تقوم بنشره.
ضع في اعتبارك المتاجر الخاصة بالمستأجر إذا كان لديك أحد الحالات التالية:
- تحتاج إلى استخدام مفاتيح التشفير التي يديرها العميل، حيث تكون المفاتيح منفصلة لكل مستأجر.
- يتطلب المستأجرون عزل بيانات التكوين الخاصة بهم تماما عن بيانات المستأجرين الآخرين. يتم التحكم في إذن الوصول لتكوين تطبيق Azure على مستوى المتجر، لذلك من خلال نشر مخازن منفصلة، يمكنك تكوين أذونات وصول منفصلة.
ميزات Azure App Configuration التي تدعم تعدد المستأجرين
عند استخدام Azure App Configuration في تطبيق متعدد المستأجرين، هناك العديد من الميزات التي يمكنك استخدامها لتخزين الإعدادات الخاصة بالمستأجر واستردادها.
بادئات المفاتيح
في Azure App Configuration، يمكنك العمل مع أزواج قيم المفاتيح التي تمثل إعدادات التطبيق. يمثل المفتاح اسم إعداد التكوين. يمكنك استخدام بنية تسمية هرمية للمفاتيح. في حل متعدد المستأجرين، ضع في اعتبارك استخدام معرف مستأجر كبادئة للمفاتيح.
على سبيل المثال، افترض أنك بحاجة إلى تخزين إعداد للإشارة إلى مستوى التسجيل للتطبيق الخاص بك. في حل مستأجر واحد، قد تقوم بتسمية هذا الإعداد LogLevel
. في حل متعدد المستأجرين، قد تختار استخدام اسم مفتاح هرمي، مثل tenant1/LogLevel
المستأجر 1، tenant2/LogLevel
للمستأجر 2، وما إلى ذلك.
يمكنك Azure App Configuration من تحديد أسماء المفاتيح الطويلة، لدعم مستويات متعددة في التسلسل الهرمي. إذا اخترت استخدام أسماء مفاتيح طويلة، فتأكد من فهم حدود الحجم للمفاتيح والقيم.
عند تحميل تكوين مستأجر واحد في التطبيق الخاص بك، يمكنك تحديد عامل تصفية بادئة مفتاح لتحميل مفاتيح المستأجر فقط. يمكنك أيضا تكوين مكتبة الموفر ل Azure App Configuration لاقتطاع بادئة المفتاح من المفاتيح، قبل أن تجعلها متاحة للتطبيق الخاص بك. عند اقتطاع بادئة المفتاح، يرى التطبيق الخاص بك اسم مفتاح متناسق، مع تحميل قيم المستأجر في التطبيق.
بطاقات عنونة
يدعم Azure App Configuration أيضا التسميات، والتي تمكنك من الحصول على قيم منفصلة بنفس المفتاح.
غالبا ما تستخدم التسميات في تعيين الإصدار، أو العمل مع بيئات نشر متعددة، أو لأغراض أخرى في الحل الخاص بك. بينما يمكنك استخدام معرفات المستأجر كتسميات، فلن تتمكن بعد ذلك من استخدام التسميات لأي شيء آخر. لذلك، بالنسبة للحلول متعددة المستأجرين، من الجيد عادة استخدام البادئات الرئيسية لإدارة الإعدادات الخاصة بمستأجر، واستخدام التسميات لأغراض أخرى.
إذا قررت استخدام التسميات لكل مستأجر، يمكن لتطبيقك تحميل الإعدادات لمستأجر معين فقط باستخدام عامل تصفية التسمية. يمكن أن يكون هذا الأسلوب مفيدا إذا كان لديك عمليات توزيع تطبيقات منفصلة لكل مستأجر.
التخزين المؤقت من جانب التطبيق
عند العمل مع Azure App Configuration، من المهم تخزين الإعدادات مؤقتا داخل التطبيق الخاص بك، بدلا من تحميلها في كل مرة تستخدمها فيها. إعدادات ذاكرة التخزين المؤقت لمكتبات موفر Azure App Configuration وتحديثها تلقائيا.
تحتاج أيضا إلى تحديد ما إذا كان التطبيق الخاص بك يقوم بتحميل الإعدادات لمستأجر واحد أو لجميع المستأجرين.
مع نمو قاعدة المستأجر، من المحتمل أن يزيد مقدار الوقت والذاكرة المطلوبة لتحميل الإعدادات لجميع المستأجرين معا. لذلك، في معظم الحالات، من الجيد تحميل الإعدادات لكل مستأجر بشكل منفصل، عندما يحتاجها تطبيقك.
إذا قمت بتحميل إعدادات تكوين كل مستأجر بشكل منفصل، يحتاج التطبيق الخاص بك إلى تخزين كل مجموعة من الإعدادات بشكل منفصل لأي مجموعة أخرى. في تطبيقات .NET، ضع في اعتبارك استخدام ذاكرة التخزين المؤقت في الذاكرة لتخزين كائن المستأجر IConfiguration
مؤقتا ثم استخدم معرف المستأجر كمفتاح ذاكرة التخزين المؤقت. باستخدام ذاكرة التخزين المؤقت في الذاكرة، لا تحتاج إلى إعادة تحميل تكوين عند كل طلب، ولكن يمكن لذاكرة التخزين المؤقت إزالة المثيلات غير المستخدمة إذا كان التطبيق الخاص بك تحت ضغط الذاكرة. يمكنك أيضا تكوين أوقات انتهاء الصلاحية لإعدادات تكوين كل مستأجر.
المساهمون
تحتفظ Microsoft بهذه المقالة. وهي مكتوبة في الأصل من قبل المساهمين التاليين.
الكاتب الرئيسي:
- جون داونز | مهندس البرامج الرئيسي
مساهمون آخرون:
- Arsen Vladimirskiy | مهندس العملاء الرئيسي، FastTrack for Azure
- تشنلان وانغ | مدير هندسة البرامج الأساسي، تكوين تطبيق Azure
لمشاهدة ملفات تعريف LinkedIn غير العامة، سجل الدخول إلى LinkedIn.