طلبات البث والردود

أنت الآن بصدد الاطّلاع على مستندات Apigee Edge.
انتقِل إلى مستندات Apigee X.
info

المواضيع التي سنتناولها في هذا القسم

بعد قراءة هذا الموضوع، ستعرف ما يلي:

  • ما هو بث الطلبات والاستجابات على Apigee Edge؟
  • حالات استخدام ميزة "بث الطلبات والاستجابات"
  • كيفية تفعيل ميزة بث الطلبات والردود

ما هو البث المباشر للطلبات والاستجابات؟

يكون بث HTTP غير مفعّل تلقائيًا، ويتمّ كتابة حمولات طلبات واستجابات HTTP في مخزن مؤقت في الذاكرة قبل أن تتمّ معالجتها بواسطة مسار الخادم الوكيل لواجهة برمجة التطبيقات. يمكنك تغيير هذا السلوك من خلال تفعيل البث. عند تفعيل البث، يتم بث حمولات الطلبات والاستجابات بدون تعديل إلى تطبيق العميل (بالنسبة إلى الاستجابات) ونقطة النهاية المستهدَفة (بالنسبة إلى الطلبات).

متى يجب تفعيل البث؟

إذا كان خادم وكيل واجهة برمجة التطبيقات يعالج طلبات و/أو ردودًا كبيرة جدًا (للاطّلاع على حدود الحجم، راجِع معلومات إضافية حول البث أدناه)، قد تحتاج إلى تفعيل البث.

ما هي المعلومات الأخرى التي يجب معرفتها حول البث؟

يقتصر حجم حمولة الرسالة على 10 ميغابايت في Edge Cloud وPrivate Cloud، حتى مع تفعيل البث. في الطلبات والردود غير المتدفّقة، يؤدي تجاوز هذا الحجم إلى حدوث الخطأ protocol.http.TooBigBody.

في عمليات نشر Edge for Private Cloud، يمكنك تعديل الحدّ الأقصى لحجم الطلب/الرد غير المتدفّق. احرص على إجراء الاختبار قبل نشر التغيير في الإصدار العلني.

  • بالنسبة إلى إصدارات Edge for Private Cloud السابقة للإصدار 4.16.01:

    في جميع معالِجات الرسائل، عدِّل ملف http.properties لزيادة الحد الأقصى في المَعلمة HTTPResponse.body.buffer.limit، ثم أعِد تشغيل معالج الرسائل.
  • بالنسبة إلى الإصدار 4.16.01 والإصدارات الأحدث من Edge for Private Cloud:
    1. عدِّل الملف /<inst_root>/apigee/customer/application/message-processor.properties. إذا لم يكن هذا الملف متوفّرًا، أنشئه.

    2. اضبط السمة conf_http_HTTPResponse.body.buffer.limit في message-processor.properties. على سبيل المثال:
      conf_http_HTTPResponse.body.buffer.limit=5m

    3. أعِد تشغيل "معالج الرسائل" (Message Processor):
      > /<inst_root>/apigee/apigee-service/bin/apigee-service edge-message-processor restart

    4. كرِّر هذه الخطوات لجميع "معالجات الرسائل".

كيفية تفعيل ميزة بث الطلبات والردود

لتفعيل بث الطلبات، عليك إضافة السمة request.streaming.enabled إلى تعريفات ProxyEndpoint وTargetEndpoint في حزمة الخادم الوكيل وضبطها على true. وبالمثل، اضبط السمة response.streaming.enabled لتفعيل بث الردود.

يمكنك العثور على ملفات الإعداد هذه في واجهة مستخدم الإدارة ضمن طريقة العرض &quot;تطوير&quot; لخادمك الوكيل. إذا كنت تعمل على تطوير التطبيق على جهازك، ستجد ملفات التعريف هذه في apiproxy/proxies وapiproxy/targets.

يوضّح هذا النموذج كيفية تفعيل بث البيانات لكل من الطلبات والاستجابات في تعريف TargetEndpoint.

<TargetEndpoint name="default">
  <HTTPTargetConnection>
    <URL>http://mocktarget.apigee.net</URL>
    <Properties>
      <Property name="response.streaming.enabled">true</Property>
      <Property name="request.streaming.enabled">true</Property>
      <Property name="supports.http10">true</Property>
      <Property name="request.retain.headers">User-Agent,Referer,Accept-Language</Property>
      <Property name="retain.queryparams">apikey</Property>
    </Properties>
  </HTTPTargetConnection>
</TargetEndpoint>

يوضّح هذا المثال كيفية تفعيل بث الردود والطلبات في تعريف ProxyEndpoint:

<ProxyEndpoint name="default">
  <HTTPProxyConnection>
    <BasePath>/v1/weather</BasePath>
    <Properties>
      <Property name="allow.http10">true</Property>
      <Property name="response.streaming.enabled">true</Property>
      <Property name="request.streaming.enabled">true</Property>
    </Properties>
  </HTTPProxyConnection>
</ProxyEndpoint>

لمزيد من المعلومات حول إعداد تعريفات نقاط النهاية، يُرجى الاطّلاع على مرجع خصائص نقاط النهاية.

عيّنات التعليمات البرمجية ذات الصلة

يمكن تنزيل نماذج خادم وكيل لواجهة برمجة التطبيقات واستخدامها بسهولة على GitHub. راجِع استخدام نماذج خوادم وكيل لواجهة برمجة التطبيقات للحصول على معلومات حول تنزيل النماذج واستخدامها.

في ما يلي أمثلة على خدمات بروكسي تتضمّن ميزة البث:

  • streaming: يوضّح هذا المثال خادمًا وكيلاً لواجهة برمجة التطبيقات تم إعداده لبث HTTP.
  • Edge Callout: Signed URL Generator: يوضّح هذا المثال أفضل طريقة لإنشاء عنوان URL موقّع للوصول إلى الملفات الكبيرة بدلاً من محاولة بثها في طلب/رد.