نظرة عامة على وظائف Azure لذاكرة التخزين المؤقت Azure ل Redis

توضح هذه المقالة كيفية استخدام ذاكرة التخزين المؤقت Azure ل Redis مع Azure Functions لإنشاء بنيات محسنة بلا خادم ومستندة إلى الحدث.

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

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

يمكنك دمج Azure Cache ل Redis وAzure Functions لإنشاء وظائف تتفاعل مع الأحداث من ذاكرة التخزين المؤقت Azure ل Redis أو الأنظمة الخارجية.

الإجراء الاتجاه مستوى الدعم
تشغيل على الرسائل الفرعية ل Redis pub المشغِّل معاينة
المشغل على قوائم Redis المشغِّل معاينة
المشغل على تدفقات Redis المشغِّل معاينة
قراءة قيمة مخزنة مؤقتا إدخال معاينة
كتابة قيم إلى ذاكرة التخزين المؤقت المخرجات معاينة

نطاق توفر مشغلات الوظائف والروابط

المستوى أساسي قياسي، متميز Enterprise وEnterprise Flash
النشر والاشتراك ‏‏نعم‬ نعم ‏‏نعم‬
القوائم ‏‏نعم‬ نعم ‏‏نعم‬
عمليات النقل المستمر ‏‏نعم‬ نعم ‏‏نعم‬
Bindings ‏‏نعم‬ نعم نعم

هام

مشغلات Redis مدعومة حاليا فقط للوظائف التي تعمل إما في خطة Elastic Premium أو خطة App Service مخصصة.

تثبيت الملحق

يتم تشغيل الوظائف في عملية عامل C# معزولة. لمعرفة المزيد، راجع دليل تشغيل وظائف C# Azure في عملية عامل معزولة.

أضف الملحق إلى مشروعك عن طريق تثبيت حزمة NuGet.

dotnet add package Microsoft.Azure.Functions.Worker.Extensions.Redis --prerelease

تثبيت الحزمة

  1. إنشاء مشروع دالة Java. يمكنك استخدام Maven: mvn archetype:generate -DarchetypeGroupId=com.microsoft.azure -DarchetypeArtifactId=azure-functions-archetype -DjavaVersion=8

  2. أضف مجموعة الملحقات عن طريق إضافة التعليمات البرمجية التالية أو استبدالها في ملف host.json الخاص بك:

    {
      "version": "2.0",
      "extensionBundle": {
        "id": "Microsoft.Azure.Functions.ExtensionBundle.Preview",
        "version": "[4.11.*, 5.0.0)"
      }
    }
    

    تحذير

    يتوفر ملحق Redis حاليا فقط في إصدار حزمة المعاينة.

  3. أضف مكتبة Java لروابط Redis إلى pom.xml الملف:

    <dependency>
      <groupId>com.microsoft.azure.functions</groupId>
      <artifactId>azure-functions-java-library-redis</artifactId>
      <version>${azure.functions.java.library.redis.version}</version>
    </dependency>
    

أضف مجموعة الملحقات عن طريق إضافة التعليمات البرمجية التالية أو استبدالها في ملف host.json الخاص بك:

  {
    "version": "2.0",
    "extensionBundle": {
      "id": "Microsoft.Azure.Functions.ExtensionBundle.Preview",
      "version": "[4.11.*, 5.0.0)"
  }
}

تحذير

يتوفر ملحق Redis حاليا فقط في إصدار حزمة المعاينة.

سلسلة الاتصال Redis

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

في التطوير المحلي، Connection يمكن تعريف باستخدام ملف local.settings.json . عند نشرها في Azure، يمكن استخدام إعدادات التطبيق.

عند الاتصال بمثيل ذاكرة التخزين المؤقت باستخدام دالة Azure، يمكنك استخدام ثلاثة أنواع من الاتصالات في عمليات النشر الخاصة بك: سلسلة الاتصال، والهوية المدارة المعينة من قبل النظام، والهوية المدارة المعينة من قبل المستخدم

للتطوير المحلي، يمكنك أيضا استخدام البيانات السرية الأساسية للخدمة.

appsettings استخدم لتكوين كل نوع من الأنواع التالية من مصادقة العميل، بافتراض Connection تعيين إلى Redis في الدالة .

سلسلة الاتصال

"Redis": "<cacheName>.redis.cache.windows.net:6380,password=..."

الهوية المُدارة التي يُعيّنها النظام

"Redis:redisHostName": "<cacheName>.redis.cache.windows.net",
"Redis:principalId": "<principalId>"

الهوية المُدارة التي يعيّنها المُستخدم

"Redis:redisHostName": "<cacheName>.redis.cache.windows.net",
"Redis:principalId": "<principalId>",
"Redis:clientId": "<clientId>"

سر كيان الخدمة

لا تتوفر الاتصالات التي تستخدم البيانات السرية الأساسية للخدمة إلا أثناء التطوير المحلي.

"Redis:redisHostName": "<cacheName>.redis.cache.windows.net",
"Redis:principalId": "<principalId>",
"Redis:clientId": "<clientId>"
"Redis:tenantId": "<tenantId>"
"Redis:clientSecret": "<clientSecret>"