پیکربندی بازه زمانی زنده نگه داشتن در پردازشگرهای پیام

شما در حال مشاهده مستندات Apigee Edge هستید.
به مستندات Apigee X مراجعه کنید .
اطلاعات

این سند نحوه پیکربندی زمان انتظار برای Keep Alive را برای پردازنده‌های پیام‌رسان Apigee Edge توضیح می‌دهد.

زمان انتظار keep alive در پردازشگر پیام، به یک اتصال TCP اجازه می‌دهد تا چندین درخواست/پاسخ HTTP را از/به سرور backend ارسال و دریافت کند، به جای اینکه برای هر جفت درخواست/پاسخ، یک اتصال جدید باز شود.

مقدار پیش‌فرض ویژگی زمان‌بندی keep alive در پردازشگر پیام، 60 ثانیه است. این دوره زمان‌بندی برای سرورهای backend پیکربندی‌شده در پیکربندی نقطه پایانی هدف و در سیاست ServiceCallout پروکسی API شما اعمال می‌شود.

مدت زمان Keep Alive برای Message Processors را می‌توان بر اساس نیاز شما از مقدار پیش‌فرض 60 ثانیه افزایش یا کاهش داد. این زمان را می‌توان به روش‌های زیر پیکربندی کرد:

  • در پروکسی API
    • در نقطه پایانی هدف
    • در سیاست ServiceCallout
  • در پردازشگر پیام

ویژگی‌های زیر، مدت زمان keep-alive را در پردازنده‌های پیام کنترل می‌کنند:

نام ملک مکان توضیحات
keepalive.timeout.millis پروکسی API:
  • نقطه پایانی هدف
  • سیاست ServiceCallout

این حداکثر زمان بیکاری است که پردازنده پیام به یک اتصال TCP واحد اجازه می‌دهد تا چندین درخواست/پاسخ HTTP را ارسال و دریافت کند، به جای اینکه برای هر جفت درخواست/پاسخ، یک اتصال جدید باز کند.

به طور پیش‌فرض، این ویژگی مقدار تعیین‌شده برای ویژگی HTTPClient.keepalive.timeout.millis در پردازنده پیام را می‌گیرد، که مقدار پیش‌فرض آن 60 ثانیه است.

اگر این ویژگی با یک مقدار زمان انتظار جدید برای سرور هدف مورد استفاده در نقطه پایانی هدف یا سیاست ServiceCallout در پروکسی API خاص اصلاح شود، زمان زنده نگه داشتن فقط برای آن سرور هدف خاص تحت تأثیر قرار می‌گیرد.

HTTPClient.keepalive.timeout.millis پردازشگر پیام

این حداکثر زمان بیکاری است که پردازنده پیام به یک اتصال TCP واحد اجازه می‌دهد تا چندین درخواست/پاسخ HTTP را ارسال و دریافت کند، به جای اینکه برای هر جفت درخواست/پاسخ، یک اتصال جدید باز کند.

این ویژگی برای همه پروکسی‌های API که روی این پردازشگر پیام اجرا می‌شوند، استفاده می‌شود.

مقدار پیش‌فرض این ویژگی 60 ثانیه است.

شما می‌توانید این ویژگی را همانطور که در پیکربندی keep-alive timeout در پردازنده‌های پیام در زیر توضیح داده شده است، تغییر دهید، یا می‌توانید با تنظیم ویژگی keepalive.timeout.millis در سطح پروکسی API، این مقدار را بازنویسی کنید.

قبل از اینکه شروع کنی

قبل از استفاده از مراحل این سند، مطمئن شوید که مباحث زیر را درک کرده‌اید:

پیکربندی زمان انتظار keep-alive در پروکسی API

زمان انتظار برای keep-alive را می‌توان در پروکسی API در مکان‌های زیر پیکربندی کرد:

  • نقطه پایانی هدف
  • سیاست ServiceCallout

پیکربندی زمان انتظار keep-alive در نقطه پایانی هدف پروکسی API

این بخش نحوه پیکربندی زمان انتظار keep alive را در نقطه پایانی هدف پروکسی API شما توضیح می‌دهد. زمان انتظار keep alive را می‌توان از طریق ویژگی keepalive.timeout.millis پیکربندی کرد که نشان دهنده مقدار زمان انتظار keep alive بر حسب میلی ثانیه است.

  1. در رابط کاربری Edge، پروکسی API خاصی را که می‌خواهید مقدار جدید زمان‌بندی keep-alive را در آن پیکربندی کنید، انتخاب کنید.
  2. نقطه پایانی هدف خاصی را که می‌خواهید تغییر دهید، انتخاب کنید.
  3. ویژگی keepalive.timeout.millis با مقدار مناسب زیر عنصر <HTTPTargetConnection> در پیکربندی TargetEndpoint اضافه کنید.

    برای مثال، برای تغییر زمان انتظار keep alive به 30 ثانیه، قطعه کد زیر را اضافه کنید:

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

    از آنجایی که ویژگی keepalive.timeout.millis بر حسب میلی‌ثانیه است، مقدار برای 30 ثانیه 30000 است.

    مثال‌های زیر نحوه پیکربندی زمان انتظار keep alive را در پیکربندی نقطه پایانی هدف پروکسی API شما نشان می‌دهند:

    مثال پیکربندی نقطه پایانی هدف با استفاده از URL برای سرور backend

    <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. تغییرات ایجاد شده در پروکسی API خود را ذخیره کنید.

پیکربندی keep-alive timeout در سیاست ServiceCallout مربوط به پروکسی API

این بخش نحوه پیکربندی مهلت زمانی keep alive را در سیاست ServiceCallout پروکسی API شما توضیح می‌دهد. مهلت زمانی keep alive را می‌توان از طریق ویژگی the keepalive.timeout.millis پیکربندی کرد، که مقدار مهلت زمانی keep alive را بر حسب میلی‌ثانیه نشان می‌دهد.

برای پیکربندی زمان انتظار keep-alive در سیاست ServiceCallout با استفاده از ویژگی keepalive.timeout.millis :

  1. در رابط کاربری Edge، پروکسی API خاصی را که می‌خواهید مقدار جدید keep alive timeout را برای سیاست ServiceCallout پیکربندی کنید، انتخاب کنید.
  2. سیاست ServiceCallout خاصی را که می‌خواهید تغییر دهید، انتخاب کنید.
  3. ویژگی keepalive.timeout.millis با مقدار مناسب زیر عنصر <HTTPTargetConnection> در پیکربندی TargetEndpoint اضافه کنید.

    برای مثال، برای تغییر زمان انتظار keep alive به 30 ثانیه، قطعه کد زیر را اضافه کنید:

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

    از آنجایی که ویژگی keepalive.timeout.millis بر حسب میلی‌ثانیه است، مقدار برای 30 ثانیه 30000 است.

    مثال‌های زیر نحوه پیکربندی زمان انتظار keep alive را در سیاست ServiceCallout پروکسی API شما نشان می‌دهند:

    مثال پیکربندی سیاست ServiceCallout با استفاده از URL برای سرور backend

    <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. تغییرات ایجاد شده در پروکسی API خود را ذخیره کنید.

پیکربندی مهلت زمانی keep-alive در پردازنده‌های پیام

این بخش نحوه پیکربندی مهلت زمانی keep-alive در پردازنده‌های پیام (Message Processors) را توضیح می‌دهد. مهلت زمانی keep-alive را می‌توان از طریق ویژگی HTTPClient.keepalive.timeout.millis پیکربندی کرد که نشان دهنده مقدار مهلت زمانی keep-alive بر حسب میلی ثانیه در کامپوننت Message Processor است. از آنجایی که این ویژگی در Message Processor به صورت کامنت (توضیح داده شده) است، باید از سینتکس ویژه 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. مطمئن شوید که فایل properties متعلق به کاربر apigee است، همانطور که در زیر نشان داده شده است:
    chown apigee:apigee /opt/apigee/customer/application/message-processor.properties
    
  5. پردازشگر پیام را مطابق شکل زیر مجدداً راه‌اندازی کنید:
    /opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
    
  6. اگر بیش از یک پردازشگر پیام دارید، مراحل بالا را روی همه پردازشگرهای پیام تکرار کنید.

تأیید مهلت زمانی keep-alive در پردازنده‌های پیام

این بخش توضیح می‌دهد که چگونه می‌توان تأیید کرد که مهلت زمانی keep alive در پردازنده‌های پیام با موفقیت تغییر داده شده است.

حتی اگر از سینتکس ویژه conf/http.properties+HTTPClient.keepalive.timeout.millis برای تنظیم زمان انتظار keep alive در پردازشگر پیام استفاده کنید، باید بررسی کنید که آیا ویژگی واقعی 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. اگر مقدار جدید keep-alive timeout با موفقیت در Message Processor تنظیم شود، دستور بالا مقدار جدید را در فایل http.properties نمایش می‌دهد.

    نتیجه نمونه از دستور بالا پس از تنظیم زمان انتظار keep alive به 30 ثانیه به شرح زیر است:

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

    در خروجی مثال بالا، توجه کنید که ویژگی HTTPClient.keepalive.timeout.millis با مقدار جدید 30000 در http.properties تنظیم شده است. این نشان می‌دهد که زمان انتظار keep alive با موفقیت در پردازنده پیام روی 30 ثانیه پیکربندی شده است.

  3. اگر هنوز مقدار قدیمی ویژگی HTTPClient.keepalive.timeout.millis را می‌بینید، تأیید کنید که تمام مراحل ذکر شده در پیکربندی keep alive timeout در Message Processors را به درستی دنبال کرده‌اید. اگر هر مرحله‌ای را از دست داده‌اید، تمام مراحل را دوباره به درستی تکرار کنید.
  4. اگر هنوز قادر به تغییر زمان انتظار Keep Alive نیستید، با پشتیبانی Google Cloud Apigee Edge تماس بگیرید.