إشعار
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تسجيل الدخول أو تغيير الدلائل.
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تغيير الدلائل.
ينطبق على: المطور | أساسي | الإصدار 2 الأساسي | قياسي | الإصدار 2 القياسي | Premium | Premium v2
توفر هذه المقالة إرشادات لتكوين واجهة برمجة تطبيقات في APIM التي تنفذ الأحداث المرسلة من الخادم (SSE). يعتمد SSE على معيار HTML5 EventSource لدفق (دفع) البيانات تلقائيا إلى عميل عبر HTTP بعد إنشاء اتصال العميل.
تلميح
توفر إدارة واجهة برمجة التطبيقات أيضا دعما أصليا لواجهات برمجة تطبيقات WebSocket، والتي تحافظ على اتصال واحد ومستمر ثنائي الاتجاه مفتوحا بين العميل والخادم.
المتطلبات الأساسية
- مثيل APIM موجود. أنشئ واحد إذا لم تكن قد قمت بذلك بالفعل.
- واجهة برمجة تطبيقات تنفذ SSE. قم باستيراد واجهة برمجة التطبيقات ونشرها إلى مثيل APIM باستخدام إحدى طرق الاستيراد المدعومة.
إرشادات SSE
اتبع هذه الإرشادات عند استخدام إدارة واجهة برمجة التطبيقات للوصول إلى واجهة برمجة تطبيقات خلفية تنفذ SSE.
اختر طبقة خدمة لاتصالات HTTP طويلة الأمد - يعتمد SSE على اتصال HTTP طويل الأمد مدعوم في مستويات تسعير معينة لإدارة واجهة برمجة التطبيقات. يتم دعم الاتصالات طويلة الأمد في طبقات إدارة واجهة برمجة التطبيقات الكلاسيكية و v2، ولكن ليس في طبقة الاستهلاك.
إبقاء الاتصالات الخاملة حية - إذا كان الاتصال بين العميل والواجهة الخلفية خاملاً لمدة 4 دقائق أو أكثر، فنفذ آلية للحفاظ على الاتصال حيًا. على سبيل المثال، قم بتمكين إشارة keepalive لبروتوكول التحكم في الإرسال (TCP) في الواجهة الخلفية للاتصال، أو إرسال نسبة استخدام الشبكة من جانب العميل مرة واحدة على الأقل كل 4 دقائق.
هذا التكوين مطلوب لتجاوز مهلة جلسة العمل الخاملة البالغة 4 دقائق التي يفرضها Azure Load Balancer، والتي يتم استخدامها في البنية الأساسية لإدارة واجهة برمجة التطبيقات.
ترحيل الأحداث مباشرة إلى العملاء - إيقاف تشغيل التخزين المؤقت للاستجابة على
forward-requestالنهج بحيث يتم ترحيل الأحداث على الفور إلى العملاء. على سبيل المثال:<forward-request timeout="120" fail-on-error-status-code="true" buffer-response="false"/>تجنب النهج الأخرى التي تخزن الاستجابات مؤقتًا - يمكن لبعض النهج مثل
validate-contentأيضًا تخزين محتوى الاستجابة مؤقتًا ولا ينبغي استخدامها مع واجهات برمجة التطبيقات التي تنفذ SSE.تجنب تسجيل نص الطلب/الاستجابة ل Azure Monitor وApplication Insights ومراكز الأحداث - يمكنك تكوين تسجيل طلب واجهة برمجة التطبيقات ل Azure Monitor أو Application Insights باستخدام إعدادات التشخيص. تسمح لك إعدادات التشخيص بتسجيل نص الطلب/الاستجابة في مراحل مختلفة من تنفيذ الطلب. بالنسبة لواجهات برمجة التطبيقات التي تنفذ SSE، يمكن أن يتسبب تسجيل نص الطلب/الاستجابة في تخزين مؤقت غير متوقع، مما قد يؤدي إلى حدوث مشاكل. تنطبق إعدادات التشخيص ل Azure Monitor وApplication Insights التي تم تكوينها في نطاق global/All APIs على جميع واجهات برمجة التطبيقات في الخدمة. يمكنك تجاوز إعدادات واجهات برمجة التطبيقات الفردية حسب الحاجة. عند تسجيل الدخول إلى مراكز الأحداث، يمكنك تكوين نطاق ومقدار معلومات السياق لتسجيل الطلب/الاستجابة باستخدام log-to-eventhubs. بالنسبة لواجهات برمجة التطبيقات التي تنفذ SSE، تأكد من تعطيل تسجيل نص الطلب/الاستجابة ل Azure Monitor وApplication Insights ومراكز الأحداث.
تعطيل التخزين المؤقت للاستجابة - للتأكد من أن الإعلامات مرسلة إلى العميل في الوقت المناسب، تحقق من عدم تمكين التخزين المؤقت للاستجابة. لمزيد من المعلومات، راجع نهج التخزين المؤقت لإدارة واجهة برمجة التطبيقات.
اختبار واجهة برمجة التطبيقات تحت التحميل - اتبع الممارسات العامة لاختبار واجهة برمجة التطبيقات تحت التحميل للكشف عن مشكلات الأداء أو التكوين قبل الانتقال إلى الإنتاج.
المحتوى ذو الصلة
- تعرف على المزيد حول تكوين النهج في APIM.
- تعرف على سعة APIM.