الأسئلة المتداولة حول تطوير Azure Cache for Redis

توفر هذه المقالة إجابات عن الأسئلة المتداولة حول كيفية تطوير Azure Cache for Redis.

كيف يمكنني البدء باستخدام Azure Cache for Redis؟

هناك عدة طرق يمكنك من خلالها البدء باستخدام Azure Cache for Redis.

إذا لم يكن لديك حساب Azure بالفعل، فإنه يمكنك:

  • افتح حساب Azure مجانا. يمكنك الحصول على الاعتمادات التي يمكن استخدامها لتجربة خدمات Azure المدفوعة. حتى بعد استخدام الاعتمادات، يمكنك الاحتفاظ بالحساب واستخدام خدمات وميزات Azure المجانية.
  • تنشيط مزايا المشترك في Visual Studio. يمنحك اشتراك MSDN الخاص بك أرصدة كل شهر يمكنك استخدامها لخدمات Azure المدفوعة.

ماذا تفعل خيارات تكوين StackExchange.Redis؟

StackExchange.Redis لديه العديد من الخيارات. يتحدث هذا القسم عن بعض الإعدادات العامة. لمزيد من المعلومات التفصيلية حول خيارات StackExchange.Redis، راجع تكوين StackExchange.Redis.

خيارات الإعداد ‏‏الوصف التوصية
إحباط فشل الاتصال عند التعيين على صحيح، لا يمكن إعادة الاتصال بعد فشل الشبكة. تعيين إلى خطأ والسماح لـ StackExchange.Redis بإعادة الاتصال تلقائيًا.
إعادة الاتصال عدد مرات تكرار محاولات الاتصال في أثناء الاتصال الأولي. راجع الملاحظات التالية للحصول على إرشادات.
وقت الاتصال وقت ms لعمليات الاتصال. راجع الملاحظات التالية للحصول على إرشادات.

عادة ما تكون القيم الافتراضية للعميل كافية. يمكنك ضبط الخيارات بناءً على حجم العمل.

إعادة المحاولات

  • بالنسبة إلى ConnectRetry وConnectTimeout، تكون الإرشادات العامة فشلاً سريعًا وإعادة المحاولة مرة أخرى. يستند هذا التوجيه إلى حمل العمل الخاص بك ومقدار الوقت---في المتوسط---الذي يستغرقه العميل لإصدار أمر Redis وتلقي استجابة.
  • دع StackExchange.Redis يعيد الاتصال تلقائيًا بدلاً من التحقق من حالة الاتصال وإعادة الاتصال بنفسك. تجنب استخدام الخاصية الاتصال ionMultiplexer.Is الاتصال ed.
  • Snowballing -- تعني واجهت مشكلة حيث تقوم بإعادة المحاولة وتكرار المحاولة مرة أخرى ولا توجد استجابة. في حالة حدوث كرة الثلج، ضع في اعتبارك استخدام خوارزمية إعادة محاولة التراجع الأسي كما هو موضح في إرشادات إعادة المحاولة العامة التي نشرتها مجموعة أنماط وممارسات Microsoft.

قيم المهلة

  • ضع في اعتبارك عبء العمل الخاص بك وقم بتعيين القيم المطابقة. إذا كنت تخزن قيمًا كبيرة، فقم بتعيين المهلة إلى قيمة أعلى.
  • اضبط AbortOnConnectFail على false واترك StackExchange.Redis يعيد الاتصال نيابة عنك.
  • استخدم مثيلاً واحداً طويل المدة ConnectionMultiplexer بدلاً من إنشاء اتصال جديد لكل طلب. لمثال على كيفية إدارة الاتصال، راجع فئة «RedisConnection» في اتصل بالذاكرة المخبأة باستخدام RedisConnection .
  • قم بتعيين الخاصية ConnectionMultiplexer.ClientName إلى اسم فريد لمثيل التطبيق لأغراض التشخيص.
  • استخدم مثيلات متعددة ConnectionMultiplexer لأحمال العمل المخصصة.
    • يمكنك اتباع هذا النموذج إذا كان لديك تحميل متفاوت في التطبيق الخاص بك. على سبيل المثال:
    • يمكنك الحصول على multixer واحد للتعامل مع مفاتيح كبيرة.
    • يمكنك الحصول على multixer واحد للتعامل مع مفاتيح صغيرة.
    • يمكنك تعيين قيم مختلفة لمهلات الاتصال ومنطق إعادة المحاولة لكل ConnectionMultiplexer التي تستخدمها.
    • قم بتعيين الخاصية ClientName على كل متعدد الإرسال للمساعدة في التشخيص.
    • قد يؤدي هذا التوجيه إلى زمن انتقال أكثر انسيابية لكل ConnectionMultiplexer.

ما هي ذاكرة التخزين المؤقت Azure Cache لعملاء Redis الذين يمكنني استخدامها؟

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

استرجع اسم المضيف والمنافذ ومفاتيح الوصول من مدخل Azure

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

  • للحصول على مفاتيح الوصول، حدد Authentication من قائمة Resource. ثم حدد علامة التبويب مفاتيح الوصول.

    Azure Cache لمفاتيح Redis

  • للحصول على اسم المضيف والمنافذ لذاكرة التخزين المؤقت، حدد نظرة عامة من قائمة الموارد. اسم المضيف هو من نموذج<DNS name>.redis.cache.windows.net.

    خصائص Azure Cache for Redis

هل هناك محاكٍ محلي لـ Azure Cache for Redis؟

لا يوجد محاكٍ محلي لـ Azure Cache for Redis. ومع ذلك، يمكنك تشغيل نسخة من المجتمع Redis على جهازك المحلي والاتصال به للحصول على تجربة مماثلة لمحاكي ذاكرة التخزين المؤقت المحلية، كما هو موضح في المثال التالي:

private static Lazy<ConnectionMultiplexer>
    lazyConnection = new Lazy<ConnectionMultiplexer> (() =>
    {
        // Connect to a locally running instance of Redis to simulate
        // a local cache emulator experience.
        return ConnectionMultiplexer.Connect("127.0.0.1:6379");
    });

public static ConnectionMultiplexer Connection
{
    get
    {
        return lazyConnection.Value;
    }
}

يعمل Redis في الأصل على Linux، ولكن يمكنك أيضا استخدام نظام Windows الفرعي لـ Linux‬ لتشغيل Redis على جهاز يعمل بنظام Windows. لمزيد من المعلومات، راجع تثبيت Redis على Windows يمكنك اختياريا تكوين ملف redis.conf لمطابقة إعدادات ذاكرة التخزين المؤقت الافتراضية لذاكرة التخزين المؤقت Azure على الإنترنت ل Redis إذا كنت تريد ذلك.

كيف يمكنني تشغيل أوامر Redis؟

يمكنك استخدام أي من الأوامر المدرجة في أوامر Redis باستثناء الأوامر المدرجة في أوامر Redis غير المدعومة في ذاكرة التخزين المؤقت Azure ل Redis. لديك العديد من الخيارات لتشغيل أوامر Redis.

إذا كان لديك ذاكرة تخزين مؤقت قياسية أو متميزة، يمكنك تشغيل أوامر Redis باستخدام وحدة تحكم Redis. توفر وحدة تحكم Redis طريقة آمنة لتشغيل أوامر Redis في Azure Portal.

يمكنك أيضًا استخدام أدوات شريط الأوامر Redis. لاستخدامها، راجع استخدام أداة سطر الأوامر Redis مع ذاكرة التخزين المؤقت Azure ل Redis

لماذا لا تكون Azure Cache for Redis على مرجع مكتبة فئة MSDN؟

يعتمد Microsoft Azure Cache for Redis على متجر البيانات المشهور مفتوح المصدر في الذاكرة، Redis. يمكنك استخدام مجموعة واسعة من عملاء Redis للعديد من لغات البرمجة. كل عميل لديه واجهة برمجة تطبيقات خاصة به التي تقوم بإجراء استدعاءات إلى Azure Cache لمثيل Redis باستخدام أوامر Redis.

نظرًا إلى اختلاف كل عميل، لا يمكنك العثور على مرجع فئة مركزي واحد على MSDN. يحتفظ كل عميل بالوثائق المرجعية الخاصة به. بالإضافة إلى الوثائق المرجعية، هناك العديد من الدروس التي تبين كيفية البدء مع Azure Cache for Redis باستخدام لغات مختلفة وعملاء ذاكرة التخزين المؤقت. للوصول إلى هذه البرامج التعليمية، راجع كيفية استخدام ذاكرة التخزين المؤقت Azure ل Redis والمقالات التابعة لها في جدول المحتويات.

هل يمكنني استخدام Azure Cache for Redis لجلسة PHP؟

نعم، لاستخدام ذاكرة التخزين المؤقت Azure ل Redis كذاكرة تخزين مؤقت لجلسة PHP، حدد سلسلة الاتصال إلى Azure Cache لمثيل Redis في session.save_path.

هام

عند استخدام Azure Cache for Redis كذاكرة تخزين مؤقت لجلسة PHP، يجب عليك ترميز عنوان URL لمفتاح الأمان المستخدم للاتصال بذاكرة التخزين المؤقت، كما هو موضح في المثال التالي:

session.save_path = "tcp://mycache.redis.cache.windows.net:6379?auth=<url encoded primary or secondary key here>";

إذا لم يكن المفتاح مشفرا بعنوان URL، فقد تتلقى استثناء برسالة مثل: Failed to parse session.save_path

لمزيد من المعلومات حول استخدام ذاكرة التخزين المؤقت Azure ل Redis كذاكرة تخزين مؤقت لجلسة PHP مع عميل PhpRedis، راجع معالج جلسة PHP.

ما هي قواعد بيانات Redis؟

بيانات Redis هي مجرد فصل منطقي للبيانات داخل نفس مثيل Redis. تتم مشاركة ذاكرة التخزين المؤقت بين كل قواعد البيانات ويعتمد الاستهلاك الفعلي للذاكرة لقاعدة بيانات معينة على المفاتيح/القيم المخزنة في تلك قاعدة البيانات. على سبيل المثال، تحتوي ذاكرة التخزين المؤقت C6 على 53 جيجابايت من الذاكرة، وP5 بها 120 جيجابايت. يمكنك اختيار وضع كل 53 جيجابايت / 120 جيجابايت في قاعدة بيانات واحدة أو يمكنك تقسيمها بين قواعد بيانات متعددة.

إشعار

عند استخدام Premium Azure Cache لـ Redis مع تمكين المجموعات، تتوفر قاعدة البيانات 0 فقط. هذا القيد هو قيد Redis مضمن وليس خاصا بذاكرة التخزين المؤقت Azure ل Redis.

تعرف على المزيد حول Azure Cache for Redis FAQs.