قياس ذاكرة التخزين المؤقت Azure لمثيل Redis
يحتوي Azure Cache for Redis على عروض ذاكرة تخزين مؤقت مختلفة توفر المرونة في اختيار حجم ذاكرة التخزين المؤقت وميزاتها. بالنسبة إلى ذاكرة التخزين المؤقت الأساسية أو القياسية أو Premium، يمكنك تغيير حجمها وطبقتها بعد إنشائها لتتناسب مع احتياجات التطبيق الخاص بك. توضح لك هذه المقالة كيفية توسيع نطاق ذاكرة التخزين المؤقت باستخدام مدخل Azure وأدوات مثل Azure PowerShell وAzure CLI.
متى يتم التوسع
يمكنك استخدام ميزات المراقبة الخاصة ب Azure Cache for Redis لمراقبة صحة ذاكرة التخزين المؤقت وأدائها. استخدم هذه المعلومات لتحديد وقت قياس ذاكرة التخزين المؤقت.
يمكنك مراقبة المقاييس التالية للمساعدة في تحديد ما إذا كنت بحاجة إلى التوسع.
- تحميل خادم Redis
- خادم Redis هو عملية واحدة مترابطة. ارتفاع تحميل خادم Redis يعني أن الخادم غير قادر على مواكبة الطلبات من جميع اتصالات العميل. في مثل هذه الحالات ، يساعد على تمكين التجميع أو زيادة عدد الشظايا بحيث يتم توزيع الوظائف العامة عبر عمليات Redis المتعددة. تقوم عمليات التجميع وعدد الشظايا الأكبر بتوزيع تشفير TLS وفك تشفيره ، وتوزيع اتصال TLS وقطع الاتصال.
- لمزيد من المعلومات، راجع إعداد التجميع.
- Memory Usage
- يشير الاستخدام العالي للذاكرة إلى أن حجم البيانات لديك كبير جدا بالنسبة لحجم ذاكرة التخزين المؤقت الحالي. فكر في التوسع إلى حجم ذاكرة تخزين مؤقت بذاكرة أكبر.
- اتصالات العملاء
- يحتوي كل حجم ذاكرة تخزين مؤقت على حد لعدد اتصالات العميل التي يمكنه دعمها. إذا كانت اتصالات العميل قريبة من الحد الأقصى لحجم ذاكرة التخزين المؤقت، ففكر في التوسع إلى مستوى أكبر، أو التوسع لتمكين التجميع وزيادة عدد الشظايا. يعتمد اختيارك على تحميل خادم Redis واستخدام الذاكرة.
- لمزيد من المعلومات حول حدود الاتصال حسب حجم ذاكرة التخزين المؤقت، راجع الأسئلة المتداولة حول تخطيط Azure Cache for Redis.
- النطاق الترددي للشبكة
- إذا تجاوز خادم Redis النطاق الترددي المتاح ، فقد تنتهي مهلة طلبات العملاء لأن الخادم لا يمكنه دفع البيانات إلى العميل بسرعة كافية. تحقق من مقاييس "قراءة ذاكرة التخزين المؤقت" و "كتابة ذاكرة التخزين المؤقت" لمعرفة مقدار النطاق الترددي المستخدم من جانب الخادم. إذا كان خادم Redis الخاص بك يتجاوز عرض النطاق الترددي المتاح للشبكة ، فيجب أن تفكر في التوسع إلى حجم ذاكرة تخزين مؤقت أكبر مع عرض نطاق ترددي أعلى للشبكة.
- لمزيد من المعلومات حول النطاق الترددي المتوفر للشبكة حسب حجم ذاكرة التخزين المؤقت، راجع الأسئلة المتداولة حول تخطيط Azure Cache for Redis.
إذا حددت أن ذاكرة التخزين المؤقت لم تعد تفي بمتطلبات تطبيقك، فيمكنك التوسع إلى طبقة تسعير ذاكرة التخزين المؤقت المناسبة لتطبيقك. يمكنك اختيار ذاكرة تخزين مؤقت أكبر أو أصغر لتتناسب مع احتياجاتك.
لمزيد من المعلومات حول تحديد طبقة تسعير ذاكرة التخزين المؤقت المراد استخدامها، راجع الأسئلة المتداولة حول اختيار الطبقة المناسبةوذاكرة التخزين المؤقت ل Azure لتخطيط Redis.
قياس ذاكرة التخزين المؤقت
لتوسيع نطاق ذاكرة التخزين المؤقت، استعرض وصولا إلى ذاكرة التخزين المؤقت في مدخل Azureوحدد قياس على اليمين.
اختر طبقة تسعير على اليسار ثم اختر تحديد.
ملاحظة
لا يتوفر تغيير الحجم حاليا مع طبقة المؤسسات.
يمكنك التوسع إلى مستوى تسعير مختلف مع القيود التالية:
- لا يمكنك توسيع مستوى تسعير أعلى إلى مستوى تسعير أقل.
- لا يمكنك توسيع ذاكرة التخزين المؤقت المتميزةإلى ذاكرة التخزين المؤقت القياسية أو الأساسية.
- لا يمكنك توسيع ذاكرة التخزين المؤقت القياسية إلى ذاكرة التخزين المؤقت الأساسية.
- يمكنك توسيع ذاكرة التخزين المؤقتة الأساسية إلى ذاكرة التخزين المؤقتة القياسية ولكن لا يمكنك تغيير الحجم في نفس الوقت. إذا كنت بحاجة إلى حجم مختلف ، فيمكنك لاحقا إجراء عملية تحجيم إلى الحجم المطلوب.
- لا يمكنك توسيع ذاكرة التخزين المؤقتة الأساسية إلى ذاكرة التخزين المؤقت المتميزة. أولا، قم بالقياس من أساسي إلى قياسي في عملية قياس واحدة، ثم من قياسي إلى Premium في عملية التحجيم التالية.
- لا يمكنك التوسع من حجم أكبر إلى حجم C0 (250 ميغابايت). ومع ذلك ، يمكنك تقليص حجمها إلى أي حجم آخر داخل نفس طبقة التسعير. على سبيل المثال، يمكنك التخفيض من C5 Standard إلى C1 Standard.
أثناء تغيير حجم ذاكرة التخزين المؤقت إلى الطبقة الجديدة، يتم عرض إشعار تغيير حجم ذاكرة التخزين المؤقت Redis .
عند اكتمال عملية تغيير الحجم، تتغير الحالة من تغيير الحجم إلى قيد التشغيل.
كيفية أتمتة عملية التحجيم
يمكنك توسيع نطاق مثيلات ذاكرة التخزين المؤقت في مدخل Azure. ويمكنك القياس باستخدام PowerShell cmdlets وAzure CLI وباستخدام مكتبات إدارة Microsoft Azure (MAML).
عند قياس ذاكرة التخزين المؤقت لأعلى أو لأسفل، يتم maxfragmentationmemory-reserved قياس كل من maxmemory-reserved الإعدادات تلقائيا بما يتناسب مع حجم ذاكرة التخزين المؤقت. على سبيل المثال، إذا maxmemory-reserved تم تعيين الإعدادات إلى 3 غيغابايت على ذاكرة تخزين مؤقت سعة 6 غيغابايت، وقمت بالتوسع إلى ذاكرة تخزين مؤقت سعة 12 غيغابايت، تحديث الإعدادات تلقائيا إلى 6 غيغابايت أثناء القياس. عندما تقوم بتقليص حجمها، يحدث العكس.
ملاحظة
عند توسيع نطاق ذاكرة التخزين المؤقت لأعلى أو لأسفل برمجيا، أي maxmemory-reserved أو maxfragmentationmemory-reserved يتم تجاهلها كجزء من طلب التحديث. يتم تكريم تغيير الحجم الخاص بك فقط. يمكنك تحديث إعدادات الذاكرة هذه بعد اكتمال عملية القياس.
التوسع باستخدام PowerShell
ملاحظة
تستخدم هذه المقالة الوحدة النمطية Azure Az PowerShell، وهي الوحدة النمطية PowerShell الموصى بها للتفاعل مع Azure. لبدء استخدام الوحدة النمطية Az PowerShell، راجع تثبيت Azure PowerShell. لمعرفة كيفية الترحيل إلى الوحدة النمطية Az PowerShell، راجع ترحيل Azure PowerShell من AzureRM إلى Az.
يمكنك تغيير حجم ذاكرة التخزين المؤقت ل Azure لمثيلات Redis باستخدام PowerShell باستخدام cmdlet Set-AzRedisCache عند تعديل ، Skuأو ShardCount الخصائصSize. يوضح المثال التالي كيفية قياس ذاكرة التخزين المؤقت المسماة myCache إلى ذاكرة تخزين مؤقت سعة 2.5 جيجابايت.
Set-AzRedisCache -ResourceGroupName myGroup -Name myCache -Size 2.5GB
لمزيد من المعلومات حول القياس باستخدام PowerShell، راجع لتغيير حجم ذاكرة التخزين المؤقت Azure ل Redis باستخدام PowerShell.
Scale using Azure CLI
لتوسيع نطاق ذاكرة التخزين المؤقت ل Azure لمثيلات Redis باستخدام Azure CLI، اتصل بالأمر azure rediscache set ومرر في تغييرات التكوين التي تريدها والتي تتضمن حجما جديدا أو وحدة تخزين أو حجم مجموعة، استنادا إلى عملية القياس التي تريدها.
لمزيد من المعلومات حول القياس باستخدام Azure CLI، راجع تغيير إعدادات ذاكرة التخزين المؤقت Azure الموجودة ل Redis.
القياس باستخدام MAML
لتوسيع نطاق ذاكرة التخزين المؤقت ل Azure لمثيلات Redis باستخدام مكتبات إدارة Microsoft Azure (MAML)، اتصل بالطريقة IRedisOperations.CreateOrUpdate ومرر بالحجم الجديد ل RedisProperties.SKU.Capacity.
static void Main(string[] args)
{
// For instructions on getting the access token, see
// https://azure.microsoft.com/documentation/articles/cache-configure/#access-keys
string token = GetAuthorizationHeader();
TokenCloudCredentials creds = new TokenCloudCredentials(subscriptionId,token);
RedisManagementClient client = new RedisManagementClient(creds);
var redisProperties = new RedisProperties();
// To scale, set a new size for the redisSKUCapacity parameter.
redisProperties.Sku = new Sku(redisSKUName,redisSKUFamily,redisSKUCapacity);
redisProperties.RedisVersion = redisVersion;
var redisParams = new RedisCreateOrUpdateParameters(redisProperties, redisCacheRegion);
client.Redis.CreateOrUpdate(resourceGroupName,cacheName, redisParams);
}
لمزيد من المعلومات، راجع إدارة ذاكرة التخزين المؤقت ل Azure ل Redis باستخدام نموذج MAML .
الأسئلة المتداولة حول تغيير الحجم
تحتوي القائمة التالية على إجابات للأسئلة المتداولة حول Azure Cache for Redis scaling.
- هل يمكنني التوسع إلى ذاكرة التخزين المؤقت Premium أو منها أو داخلها؟
- بعد القياس، هل يجب علي تغيير اسم ذاكرة التخزين المؤقت أو مفاتيح الوصول؟
- كيف يعمل التحجيم؟
- هل سأفقد البيانات من ذاكرة التخزين المؤقت أثناء القياس؟
- هل يتأثر إعداد قواعد البيانات المخصصة أثناء القياس؟
- هل ستكون ذاكرة التخزين المؤقت متاحة أثناء القياس؟
- هل هناك قيود على التوسع مع النسخ المتماثل الجغرافي؟
- العمليات غير المدعومة
- كم من الوقت يستغرق التحجيم؟
- كيف يمكنني معرفة متى يكتمل التحجيم؟
هل يمكنني التوسع إلى ذاكرة التخزين المؤقت Premium أو منها أو داخلها؟
- لا يمكنك التدرج من ذاكرة تخزين مؤقت Premium وصولا إلى طبقة تسعير أساسية أو قياسية.
- يمكنك التوسع من طبقة تسعير ذاكرة التخزين المؤقت Premium إلى أخرى.
- لا يمكنك توسيع ذاكرة التخزين المؤقتة الأساسية إلى ذاكرة التخزين المؤقت المتميزة. أولا، قم بالقياس من أساسي إلى قياسي في عملية قياس واحدة، ثم من قياسي إلى Premium في عملية قياس لاحقة.
- إذا قمت بتمكين التجميع عند إنشاء ذاكرة التخزين المؤقت Premium، فيمكنك تغيير حجم المجموعة. إذا تم إنشاء ذاكرة التخزين المؤقت دون تمكين التجميع، فيمكنك تكوين التجميع في وقت لاحق.
لمزيد من المعلومات، راجع كيفية تكوين نظام المجموعة المتميز الخاص بـ Azure Cache لـ Redis.
بعد القياس، هل يجب علي تغيير اسم ذاكرة التخزين المؤقت أو مفاتيح الوصول؟
لا، لم يتغير اسم ذاكرة التخزين المؤقت ومفاتيحها أثناء عملية تغيير الحجم.
كيف يعمل التحجيم؟
- عند قياس ذاكرة التخزين المؤقت الأساسية إلى حجم مختلف، يتم إيقاف تشغيلها وتوفير ذاكرة تخزين مؤقت جديدة باستخدام الحجم الجديد. خلال هذا الوقت، تكون ذاكرة التخزين المؤقت غير متوفرة ويتم فقدان جميع البيانات الموجودة في ذاكرة التخزين المؤقت.
- عند قياس ذاكرة التخزين المؤقت الأساسية إلى ذاكرة التخزين المؤقت القياسية، يتم توفير ذاكرة تخزين مؤقت نسخة متماثلة ويتم نسخ البيانات من ذاكرة التخزين المؤقت الأساسية إلى ذاكرة التخزين المؤقت للنسخة المتماثلة. تظل ذاكرة التخزين المؤقت متوفرة أثناء عملية التحجيم.
- عند قياس ذاكرة تخزين مؤقت قياسية إلى حجم مختلف أو إلى ذاكرة تخزين مؤقت Premium، يتم إيقاف تشغيل إحدى النسخ المتماثلة وإعادة توفيرها إلى الحجم الجديد ونقل البيانات، ثم تقوم النسخة المتماثلة الأخرى بتجاوز الفشل قبل إعادة توفيرها، على غرار العملية التي تحدث أثناء فشل إحدى عقد ذاكرة التخزين المؤقت.
- عند توسيع نطاق ذاكرة تخزين مؤقت متفاوت المسافات، يتم توفير شظايا جديدة وإضافتها إلى مجموعة خادم Redis. ثم يتم إعادة تشكيل البيانات عبر جميع الشظايا.
- عند القياس في ذاكرة تخزين مؤقت متفاوت المسافات، يتم أولا إعادة تشكيل البيانات ثم يتم تقليل حجم الكتلة إلى شظايا مطلوبة.
- في بعض الحالات، مثل تغيير حجم ذاكرة التخزين المؤقت أو ترحيلها إلى مجموعة مختلفة، يمكن أن يتغير عنوان IP الأساسي لذاكرة التخزين المؤقت. يتغير سجل DNS لذاكرة التخزين المؤقت ويكون شفافا لمعظم التطبيقات. ومع ذلك، إذا كنت تستخدم عنوان IP لتكوين الاتصال بذاكرة التخزين المؤقت الخاصة بك، أو لتكوين NSGs، أو جدران الحماية التي تسمح بحركة المرور إلى ذاكرة التخزين المؤقت، فقد يواجه تطبيقك مشكلة في الاتصال في وقت ما بعد تحديثات سجل DNS.
هل سأفقد البيانات من ذاكرة التخزين المؤقت أثناء القياس؟
- عند تغيير حجم ذاكرة التخزين المؤقت الأساسية إلى حجم جديد، يتم فقدان كافة البيانات وذاكرة التخزين المؤقت غير متوفرة أثناء عملية التحجيم.
- عند قياس ذاكرة التخزين المؤقت الأساسية إلى ذاكرة التخزين المؤقت القياسية ، عادة ما يتم الاحتفاظ بالبيانات الموجودة في ذاكرة التخزين المؤقت.
- عند قياس ذاكرة تخزين مؤقت قياسية إلى حجم أو طبقة أكبر، أو عند تغيير حجم ذاكرة التخزين المؤقت Premium إلى حجم أكبر، يتم الاحتفاظ بجميع البيانات عادة. عند قياس ذاكرة التخزين المؤقت القياسية أو Premium إلى حجم أصغر، يمكن فقدان البيانات إذا تجاوز حجم البيانات الحجم الأصغر الجديد عند تصغيرها. إذا فقدت البيانات عند تقليصها، يتم إخلاء المفاتيح باستخدام سياسة الإخلاء allkeys-lru .
هل يتأثر إعداد قواعد البيانات المخصصة أثناء القياس؟
إذا قمت بتكوين قيمة مخصصة للإعداد databases أثناء إنشاء ذاكرة التخزين المؤقت، فضع في اعتبارك أن بعض طبقات التسعير لها حدود قواعد بيانات مختلفة. فيما يلي بعض الاعتبارات عند التوسع في هذا السيناريو:
- عند التوسع إلى طبقة تسعير بحد أقل
databasesمن المستوى الحالي:- إذا كنت تستخدم الرقم الافتراضي ل
databases، وهو 16 لجميع مستويات التسعير ، فلن يتم فقد أي بيانات. - إذا كنت تستخدم رقما
databasesمخصصا يقع ضمن حدود الطبقة التي تقوم بتوسيع نطاقها، الاحتفاظ بهذاdatabasesالإعداد ولن يتم فقد أي بيانات. - إذا كنت تستخدم رقما
databasesمخصصا يتجاوز حدود الطبقة الجديدة،databasesخفض الإعداد إلى حدود الطبقة الجديدة ويتم فقدان جميع البيانات الموجودة في قواعد البيانات التي تمت إزالتها.
- إذا كنت تستخدم الرقم الافتراضي ل
- عند التوسع إلى طبقة تسعير بنفس الحد أو أعلى
databasesمن المستوى الحالي، يتم الاحتفاظ بإعدادكdatabasesولا يتم فقد أي بيانات.
على الرغم من أن ذاكرة التخزين المؤقت القياسية Premium تحتوي على اتفاقية مستوى الخدمة بنسبة 99.9٪ للتوفر ، إلا أنه لا توجد اتفاقية مستوى الخدمة لفقدان البيانات.
هل ستكون ذاكرة التخزين المؤقت متاحة أثناء القياس؟
- تظل ذاكرة التخزين المؤقت القياسيةPremium متوفرة أثناء عملية القياس. ومع ذلك، يمكن أن تحدث إشارات الاتصال أثناء تغيير حجم ذاكرة التخزين المؤقت القياسية Premium، وكذلك أثناء القياس من ذاكرة التخزين المؤقت الأساسية إلى ذاكرة التخزين المؤقت القياسية. من المتوقع أن تكون نقاط الاتصال هذه صغيرة ويمكن لعملاء redis عموما إعادة تأسيس اتصالهم على الفور.
- تكون ذاكرة التخزين المؤقت الأساسية غير متصلة بالإنترنت أثناء توسيع نطاق العمليات إلى حجم مختلف. تظل ذاكرة التخزين المؤقت الأساسية متاحة عند القياس من أساسي إلى قياسي ولكنها قد تواجه نقطة اتصال صغيرة. في حالة حدوث وميض اتصال، يمكن لعملاء Redis عموما إعادة تأسيس اتصالهم على الفور.
هل هناك قيود على التوسع مع النسخ المتماثل الجغرافي؟
مع تكوين النسخ المتماثل الجغرافي، قد تلاحظ أنه لا يمكنك قياس ذاكرة التخزين المؤقت أو تغيير الشظايا في مجموعة. يمنعك ارتباط النسخ المتماثل الجغرافي بين مخبأين مؤقتا من قياس العملية أو تغيير عدد الشظايا في مجموعة. يجب إلغاء ربط ذاكرة التخزين المؤقت لإصدار هذه الأوامر. لمزيد من المعلومات، راجع تكوين النسخ المتماثل الجغرافي.
العمليات غير المدعومة
- لا يمكنك توسيع مستوى تسعير أعلى إلى مستوى تسعير أقل.
- لا يمكنك توسيع ذاكرة التخزين المؤقت المتميزةإلى ذاكرة التخزين المؤقت القياسية أو الأساسية.
- لا يمكنك توسيع ذاكرة التخزين المؤقت القياسية إلى ذاكرة التخزين المؤقت الأساسية.
- يمكنك توسيع ذاكرة التخزين المؤقتة الأساسية إلى ذاكرة التخزين المؤقتة القياسية ولكن لا يمكنك تغيير الحجم في نفس الوقت. إذا كنت بحاجة إلى حجم مختلف ، فيمكنك إجراء عملية تحجيم إلى الحجم الذي تريده في وقت لاحق.
- لا يمكنك توسيع ذاكرة التخزين المؤقتة الأساسية إلى ذاكرة التخزين المؤقت المتميزة. المقياس الأول من أساسي إلى قياسي في عملية قياس واحدة، ثم المقياس من قياسي إلى Premium في عملية لاحقة.
- لا يمكنك التوسع من حجم أكبر إلى حجم C0 (250 ميغابايت).
في حالة فشل عملية تغيير الحجم، تحاول الخدمة إرجاع العملية، وستعود ذاكرة التخزين المؤقت إلى الحجم الأصلي.
كم من الوقت يستغرق التحجيم؟
يعتمد وقت التوسع على بعض العوامل. فيما يلي بعض العوامل التي يمكن أن تؤثر على المدة التي يستغرقها القياس.
- كمية البيانات: تستغرق كميات أكبر من البيانات وقتا أطول ليتم تكرارها
- طلبات الكتابة العالية: يعني ارتفاع عدد عمليات الكتابة تكرار المزيد من البيانات عبر العقد أو الشظايا
- تحميل خادم مرتفع: يعني تحميل الخادم الأعلى أن خادم Redis مشغول ولديه دورات وحدة المعالجة المركزية المحدودة لإكمال إعادة توزيع البيانات
بشكل عام ، عند قياس ذاكرة التخزين المؤقت بدون بيانات ، يستغرق الأمر حوالي 20 دقيقة. بالنسبة إلى ذاكرة التخزين المؤقت المجمعة، يستغرق القياس حوالي 20 دقيقة لكل قطعة مع الحد الأدنى من البيانات.
كيف يمكنني معرفة متى يكتمل التحجيم؟
في مدخل Azure، يمكنك رؤية عملية القياس قيد التقدم. عند اكتمال القياس، تتغير حالة ذاكرة التخزين المؤقت إلى قيد التشغيل.