قياس سرعة Azure Cosmos DB باستخدام مشغل Azure Functions Timer
ينطبق على: NoSQL
يعتمد أداء حساب Azure Cosmos DB على مقدار معدل النقل المقدم المعبر عنه في وحدات الطلب في الثانية (RU/s). التوفير في مستوى تفصيلي ثانٍ ويتم تحرير فوترته بناءً على أعلى RU/s في الساعة. يتيح نموذج السعة المتوفرة هذا للخدمة توفير معدل نقل متسق ويمكن التنبؤ به، وزمن انتقال منخفض مضمون، وإتاحة عالية. معظم أحمال الإنتاج هي هذه الميزات. ومع ذلك، في بيئات التطوير والاختبار حيث يتم استخدام Azure Cosmos DB فقط أثناء ساعات العمل، يمكنك زيادة معدل النقل في الصباح وتقليصها في المساء بعد ساعات العمل.
يمكنك تعيين معدل النقل عبر قوالب Azure Resource Manager وAzure CLI وPowerShell، لواجهة برمجة التطبيقات لحسابات NoSQL، أو باستخدام Azure Cosmos DB SDKs الخاصة باللغة. تتمثل فائدة استخدام قوالب إدارة الموارد أو Azure CLI أو PowerShell في أنها تدعم جميع واجهات برمجة تطبيقات نموذج Azure Cosmos DB.
مشروع نموذج جدولة معدل النقل
لتبسيط العملية لتوسيع نطاق Azure Cosmos DB على جدول زمني، أنشأنا نموذج مشروع يسمى مجدول معدل النقل Azure Cosmos DB. هذا المشروع عبارة عن تطبيق Azure Functions مع مشغلين مؤقتين - "ScaleUpTrigger" و"ScaleDownTrigger". تقوم المشغلات بتشغيل برنامج PowerShell النصي الذي يقوم بتعيين معدل النقل لكل مورد كما هو محدد في ملف resources.json
في كل مشغل. تم تكوين ScaleUpTrigger للتشغيل في الساعة 8 صباحاً بالتوقيت العالمي المتفق عليه بينما تم تكوين ScaleDownTrigger للتشغيل في الساعة 6 مساءً بالتوقيت العالمي المتفق عليه ويمكن تحديث هذه الأوقات بسهولة داخل ملف function.json
لكل مشغل.
يمكنك استنساخ هذا المشروع محليَّا وتعديله لتحديد موارد Azure Cosmos DB لتوسيع نطاق العمل وتقليصه والجدول الزمني للتشغيل. يمكنك لاحقا توزيعه في اشتراك Azure وتأمينه باستخدام هوية الخدمة المدارة مع أذونات التحكم في الوصول المستند إلى الدور Azure (Azure RBAC) مع دور "عامل تشغيل Azure Cosmos DB" لتعيين معدل النقل على حسابات Azure Cosmos DB.
الخطوات التالية
- تعرف على المزيد وقم بتنزيل العينة من جدولة نقل Azure Cosmos DB.