ضبط مهلة انتهاء الصلاحية في "معالجات الرسائل"

يتم الآن عرض مستندات Apigee Edge.
انتقِل إلىمستندات Apigee X.
info

يوضّح هذا المستند كيفية ضبط مهلة إبقاء الاتصال نشطًا لمعالِجات رسائل Apigee Edge.

تسمح مهلة إبقاء الاتصال نشطًا في "معالِج الرسائل" لاتصال TCP واحد بإرسال طلبات واستلام استجابات HTTP متعددة من خادم الخلفية وإليه، بدلاً من فتح اتصال جديد لكل زوج من الطلبات والاستجابات.

القيمة التلقائية لخاصية مهلة إبقاء الاتصال نشطًا في "معالِج الرسائل" هي 60 ثانية. تنطبق هذه المهلة على خوادم الخلفية التي تم ضبطها في إعدادات نقطة النهاية المستهدَفة وفي سياسة ServiceCallout لوكيل واجهة برمجة التطبيقات.

يمكن زيادة مهلة إبقاء الاتصال نشطًا لمعالِجات الرسائل أو تقليلها عن القيمة التلقائية البالغة 60 ثانية استنادًا إلى احتياجاتك. يمكن ضبطها بالطرق التالية:

  • في وكيل واجهة برمجة التطبيقات
    • في نقطة النهاية المستهدَفة
    • في سياسة ServiceCallout
  • في "معالِج الرسائل"

تتحكّم الخصائص التالية في مهلة إبقاء الاتصال نشطًا في "معالِجات الرسائل":

اسم السمة الموقع الجغرافي الوصف
keepalive.timeout.millis وكيل واجهة برمجة التطبيقات:
  • نقطة النهاية المستهدَفة
  • سياسة ServiceCallout

هذا هو الحد الأقصى لوقت عدم النشاط الذي يسمح فيه "معالِج الرسائل" لاتصال TCP واحد بإرسال طلبات واستلام استجابات HTTP متعددة، بدلاً من فتح اتصال جديد لكل زوج من الطلبات والاستجابات.

تأخذ هذه السمة تلقائيًا القيمة التي تم ضبطها للـ HTTPClient.keepalive.timeout.millis في "معالِج الرسائل"، حيث تكون القيمة التلقائية 60 ثانية.

إذا تم تعديل هذه السمة باستخدام قيمة مهلة جديدة للخادم المستهدَف المستخدَم في الـ نقطة النهاية المستهدَفة أو سياسة الـServiceCallout في وكيل واجهة برمجة التطبيقات المحدّد، لن تتأثر إلا مهلة إبقاء الاتصال نشطًا لهذا الخادم المستهدَف المحدّد.

HTTPClient.keepalive.timeout.millis معالِج الرسائل

هذا هو الحد الأقصى لوقت عدم النشاط الذي يسمح فيه "معالِج الرسائل" لاتصال TCP واحد بإرسال طلبات واستلام استجابات HTTP متعددة، بدلاً من فتح اتصال جديد لكل زوج من الطلبات والاستجابات.

تُستخدَم هذه السمة لجميع وكلاء واجهة برمجة التطبيقات الذين يتم تشغيلهم على "معالِج الرسائل" هذا.

القيمة التلقائية لهذه السمة هي 60 ثانية.

يمكنك إما تعديل هذه السمة كما هو موضّح في ضبط مهلة إبقاء الاتصال نشطًا في "معالِجات الرسائل" أدناه، أو يمكنك استبدال هذه القيمة من خلال ضبط السمة keepalive.timeout.millis على مستوى وكيل واجهة برمجة التطبيقات.

قبل البدء

قبل استخدام الخطوات الواردة في هذا المستند، تأكَّد من فهم المواضيع التالية:

ضبط مهلة إبقاء الاتصال نشطًا في وكيل واجهة برمجة التطبيقات

يمكن ضبط مهلة إبقاء الاتصال نشطًا في وكيل واجهة برمجة التطبيقات في الأماكن التالية:

  • نقطة النهاية المستهدَفة
  • سياسة ServiceCallout

ضبط مهلة إبقاء الاتصال نشطًا في نقطة النهاية المستهدَفة لوكيل واجهة برمجة التطبيقات

يوضّح هذا القسم كيفية ضبط مهلة إبقاء الاتصال نشطًا في نقطة النهاية المستهدَفة لوكيل واجهة برمجة التطبيقات. يمكن ضبط مهلة إبقاء الاتصال نشطًا من خلال السمة keepalive.timeout.millis التي تمثّل قيمة مهلة إبقاء الاتصال نشطًا بالملّي ثانية.

  1. في واجهة مستخدم Edge، اختَر وكيل واجهة برمجة التطبيقات المحدّد الذي تريد ضبط قيمة مهلة إبقاء الاتصال نشطًا الجديدة له.
  2. اختَر نقطة النهاية المستهدَفة المحدّدة التي تريد تعديلها.
  3. أضِف السمة keepalive.timeout.millis بقيمة مناسبة ضمن العنصر <HTTPTargetConnection> في إعدادات TargetEndpoint

    على سبيل المثال، لتغيير مهلة إبقاء الاتصال نشطًا إلى 30 ثانية، أضِف كتلة الرموز البرمجية التالية:

    <Properties>
      <Property name="keepalive.timeout.millis">30000</Property>
    </Properties>

    بما أنّ السمة keepalive.timeout.millis بالملّي ثانية، تكون قيمة 30 ثانية هي 30000.

    توضّح الأمثلة التالية كيفية ضبط مهلة إبقاء الاتصال نشطًا في إعدادات نقطة النهاية المستهدَفة لوكيل واجهة برمجة التطبيقات:

    مثال على إعدادات نقطة النهاية المستهدَفة باستخدام عنوان URL لخادم الخلفية

    <TargetEndpoint name="default">
      <HTTPTargetConnection>
        <URL>https://mocktarget.apigee.net/json</URL>
        <Properties>
          <Property name="keepalive.timeout.millis">30000</Property>
        </Properties>
      </HTTPTargetConnection>
    </TargetEndpoint>

    مثال على إعدادات نقطة النهاية المستهدَفة باستخدام الخادم المستهدَف

    <TargetEndpoint name="default">
      <HTTPTargetConnection>
        <LoadBalancer>
          <Server name="target1" />
          <Server name="target2" />
        </LoadBalancer>
        <Properties>
          <Property name="keepalive.timeout.millis">30000</Property>
        </Properties>
        <Path>/test</Path>
      </HTTPTargetConnection>
    </TargetEndpoint>
  4. احفظ التغييرات التي أجريتها على وكيل واجهة برمجة التطبيقات.

ضبط مهلة إبقاء الاتصال نشطًا في سياسة ServiceCallout لوكيل واجهة برمجة التطبيقات

يوضّح هذا القسم كيفية ضبط مهلة إبقاء الاتصال نشطًا في الـ ServiceCallout لـ وكيل واجهة برمجة التطبيقات. يمكن ضبط مهلة إبقاء الاتصال نشطًا من خلال السمة the keepalive.timeout.millis التي تمثّل قيمة مهلة إبقاء الاتصال نشطًا بالملّي ثانية.

لضبط مهلة إبقاء الاتصال نشطًا في سياسة ServiceCallout باستخدام السمة keepalive.timeout.millis، اتّبِع الخطوات التالية:

  1. في واجهة مستخدم Edge، اختَر وكيل واجهة برمجة التطبيقات المحدّد الذي تريد ضبط قيمة مهلة إبقاء الاتصال نشطًا الجديدة للسياسة ServiceCallout فيه.
  2. اختَر سياسة ServiceCallout المحدّدة التي تريد تعديلها.
  3. أضِف السمة keepalive.timeout.millis بقيمة مناسبة ضمن العنصر <HTTPTargetConnection> في إعدادات TargetEndpoint.

    على سبيل المثال، لتغيير مهلة إبقاء الاتصال نشطًا إلى 30 ثانية، أضِف كتلة الرموز البرمجية التالية:

    <Properties>
      <Property name="keepalive.timeout.millis">30000</Property>
    </Properties>

    بما أنّ السمة keepalive.timeout.millis بالملّي ثانية، تكون قيمة 30 ثانية هي 30000.

    توضّح الأمثلة التالية كيفية ضبط مهلة إبقاء الاتصال نشطًا في ServiceCallout سياسة لوكيل واجهة برمجة التطبيقات:

    مثال على إعدادات سياسة ServiceCallout باستخدام عنوان URL لخادم الخلفية

    <ServiceCallout name="Service-Callout-1">
      <DisplayName>Service Callout-1</DisplayName>
      <HTTPTargetConnection>
        <Properties>
          <Property name="keepalive.timeout.millis">30000</Property>
        </Properties>
        <URL>https://mocktarget.apigee.net/json</URL>
      </HTTPTargetConnection>
    </ServiceCallout>

    مثال على إعدادات سياسة ServiceCallout باستخدام الخادم المستهدَف

    <ServiceCallout enabled="true" name="Service-Callout-1">
      <DisplayName>Service Callout-1</DisplayName>
      <Response>calloutResponse</Response>
      <HTTPTargetConnection>
        <LoadBalancer>
          <Server name="target1" />
          <Server name="target2" />
        </LoadBalancer>
        <Properties>
          <Property name="keepalive.timeout.millis">30000</Property>
        </Properties>
        <Path>/test</Path>
      </HTTPTargetConnection>
    </ServiceCallout>
  4. احفظ التغييرات التي أجريتها على وكيل واجهة برمجة التطبيقات.

ضبط مهلة إبقاء الاتصال نشطًا في "معالِجات الرسائل"

يوضّح هذا القسم كيفية ضبط مهلة إبقاء الاتصال نشطًا في "معالِجات الرسائل". يمكن ضبط مهلة إبقاء الاتصال نشطًا من خلال السمة HTTPClient.keepalive.timeout.millis التي تمثّل قيمة مهلة إبقاء الاتصال نشطًا بالملّي ثانية في مكوّن "معالِج الرسائل". بما أنّ هذه السمة معلَّقة في "معالِج الرسائل"، عليك استخدام البنية الخاصة conf/http.properties+HTTPClient.keepalive.timeout.millis كما هو موضّح في قسم ضبط رمز مميّز معلَّق حاليًا في كيفية ضبط Edge.

لضبط مهلة إبقاء الاتصال نشطًا في "معالِجات الرسائل"، اتّبِع الخطوات التالية:

  1. على جهاز "معالِج الرسائل"، افتح الملف التالي في أحد المحرّرات. إذا لم يكن الملف موجودًا، أنشِئه.
    /opt/apigee/customer/application/message-processor.properties

    على سبيل المثال، لفتح الملف باستخدام vi، أدخِل ما يلي:

    vi /opt/apigee/customer/application/message-processor.properties
    
  2. أضِف سطرًا بالتنسيق التالي إلى ملف الخصائص، مع استبدال قيمة لـ TIME_IN_MILLISECONDS
    conf/http.properties+HTTPClient.keepalive.timeout.millis=TIME_IN_MILLISECONDS

    على سبيل المثال، لتغيير مهلة إبقاء الاتصال نشطًا في "معالِج الرسائل" إلى 30 ثانية، أضِف السطر التالي:

    conf/http.properties+HTTPClient.keepalive.timeout.millis=30000
  3. احفظ التغييرات.
  4. تأكَّد من أنّ ملف الخصائص مملوك للمستخدم apigee كما هو موضّح أدناه:
    chown apigee:apigee /opt/apigee/customer/application/message-processor.properties
    
  5. أعِد تشغيل "معالِج الرسائل" كما هو موضّح أدناه:
    /opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
    
  6. إذا كان لديك أكثر من "معالِج رسائل"، كرِّر الخطوات أعلاه على جميع الـ "معالِجات الرسائل".

التحقّق من مهلة إبقاء الاتصال نشطًا في "معالِجات الرسائل"

يوضّح هذا القسم كيفية التحقّق من أنّه تم تعديل مهلة إبقاء الاتصال نشطًا بنجاح في "معالِجات الرسائل".

على الرغم من استخدام البنية الخاصة conf/http.properties+HTTPClient.keepalive.timeout.millis لضبط مهلة إبقاء الاتصال نشطًا في "معالِج الرسائل"، عليك التحقّق مما إذا تم ضبط السمة الفعلية HTTPClient.keepalive.timeout.millis بالقيمة الجديدة.

  1. على جهاز "معالِج الرسائل"، ابحث عن السمة HTTPClient.keepalive.timeout.millis في الدليل /opt/apigee/edge-message-processor/conf وتحقَّق مما إذا تم ضبطها بالقيمة الجديدة كما هو موضّح أدناه:
    grep -ri "HTTPClient.keepalive.timeout.millis" /opt/apigee/edge-message-processor/conf
    
  2. إذا تم ضبط قيمة مهلة إبقاء الاتصال نشطًا الجديدة بنجاح في "معالِج الرسائل"، يعرِض الأمر أعلاه القيمة الجديدة في الملف http.properties.

    في ما يلي نموذج للنتيجة من الأمر أعلاه بعد ضبط مهلة إبقاء الاتصال نشطًا على 30 ثانية:

    /opt/apigee/edge-message-processor/conf/http.properties:HTTPClient.keepalive.timeout.millis=30000

    في نموذج الناتج أعلاه، لاحظ أنّه تم ضبط السمة HTTPClient.keepalive.timeout.millis بالقيمة الجديدة 30000 في http.properties. يشير ذلك إلى أنّه تم ضبط مهلة إبقاء الاتصال نشطًا بنجاح على 30 ثانية في "معالِج الرسائل".

  3. إذا كنت لا تزال ترى القيمة القديمة للسمة HTTPClient.keepalive.timeout.millis، تأكَّد من اتّباع جميع الخطوات الموضّحة في ضبط مهلة إبقاء الاتصال نشطًا في "معالِجات الرسائل" بشكلٍ صحيح. إذا فاتتك أي خطوة، كرِّر جميع الخطوات مرة أخرى بشكلٍ صحيح.
  4. إذا كنت لا تزال غير قادر على تعديل مهلة إبقاء الاتصال نشطًا، تواصَل مع فريق دعم Google Cloud Apigee Edge.