Настройка тайм-аута поддержания активности в процессорах сообщений

Вы просматриваете документацию Apigee Edge .
Перейдите к документации Apigee X.
информация

В этом документе объясняется, как настроить тайм-аут поддержания активности для процессоров сообщений Apigee Edge.

Тайм-аут поддержания активности процессора сообщений позволяет одному TCP-соединению отправлять и получать несколько HTTP-запросов/ответов от/на внутренний сервер вместо открытия нового соединения для каждой пары запрос/ответ.

Значение по умолчанию свойства тайм-аута поддержания активности процессора сообщений составляет 60 секунд. Этот период ожидания применим к внутренним серверам, настроенным в конфигурации целевой конечной точки и в политике ServiceCallout вашего прокси API.

Время ожидания активности для процессоров сообщений можно увеличить или уменьшить по сравнению со значением по умолчанию, равным 60 секундам, в зависимости от ваших потребностей. Его можно настроить следующими способами:

  • В API-прокси
    • В целевой конечной точке
    • В политике ServiceCallout
  • О процессоре сообщений

Следующие свойства управляют временем ожидания активности процессоров сообщений:

Имя свойства Расположение Описание
keepalive.timeout.millis API-прокси:
  • Целевая конечная точка
  • Политика ServiceCallout

Это максимальное время простоя, в течение которого процессор сообщений позволяет одному TCP-соединению отправлять и получать несколько HTTP-запросов/ответов вместо открытия нового соединения для каждой пары запрос/ответ.

По умолчанию это свойство принимает значение, установленное для свойства HTTPClient.keepalive.timeout.millis в процессоре сообщений, где значение по умолчанию составляет 60 секунд.

Если это свойство изменено с использованием нового значения тайм-аута для целевого сервера, используемого в целевой конечной точке, или политики ServiceCallout в конкретном прокси-сервере API, это повлияет на время поддержания активности только для этого конкретного целевого сервера.

HTTPClient.keepalive.timeout.millis Процессор сообщений

Это максимальное время простоя, в течение которого процессор сообщений позволяет одному TCP-соединению отправлять и получать несколько HTTP-запросов/ответов вместо открытия нового соединения для каждой пары запрос/ответ.

Это свойство используется для всех прокси-серверов API, работающих на этом процессоре сообщений.

Значение этого свойства по умолчанию — 60 секунд.

Вы можете либо изменить это свойство, как описано в разделе «Настройка времени ожидания активности на процессорах сообщений» ниже, либо перезаписать это значение, установив свойство keepalive.timeout.millis на уровне прокси-сервера API.

Прежде чем начать

Прежде чем использовать действия, описанные в этом документе, убедитесь, что вы понимаете следующие темы:

Настройка таймаута поддержания активности в прокси-сервере API

Таймаут поддержания активности можно настроить в прокси-сервере API в следующих местах:

  • Целевая конечная точка
  • Политика ServiceCallout

Настройка тайм-аута поддержания активности в целевой конечной точке прокси-сервера API

В этом разделе объясняется, как настроить тайм-аут поддержания активности в целевой конечной точке вашего прокси-сервера API. Тайм-аут поддержания активности можно настроить с помощью свойства keepalive.timeout.millis , которое представляет значение тайм-аута поддержания активности в миллисекундах.

  1. В пользовательском интерфейсе Edge выберите конкретный прокси-сервер API, в котором вы хотите настроить новое значение времени ожидания активности.
  2. Выберите конкретную целевую конечную точку, которую вы хотите изменить.
  3. Добавьте свойство keepalive.timeout.millis с соответствующим значением в элемент <HTTPTargetConnection> в конфигурации TargetEndpoint .

    Например, чтобы изменить время ожидания активности на 30 секунд, добавьте следующий блок кода:

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

    Поскольку свойство keepalive.timeout.millis указано в миллисекундах, значение 30 секунд равно 30000 .

    В следующих примерах показано, как настроить тайм-аут поддержания активности в конфигурации целевой конечной точки вашего прокси API:

    Пример конфигурации целевой конечной точки с использованием 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. Сохраните изменения, внесенные в ваш прокси API.

Настройка тайм-аута поддержания активности в политике ServiceCallout прокси-сервера API

В этом разделе объясняется, как настроить тайм-аут поддержания активности в политике ServiceCallout вашего прокси-сервера API. Тайм-аут поддержания активности можно настроить с помощью свойства the keepalive.timeout.millis , которое представляет значение времени ожидания активности в миллисекундах.

Чтобы настроить время ожидания активности в политике ServiceCallout с помощью свойства keepalive.timeout.millis :

  1. В пользовательском интерфейсе Edge выберите конкретный прокси-сервер API, в котором вы хотите настроить новое значение времени ожидания активности для политики 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 вашего прокси-сервера API:

    Пример конфигурации политики 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. Сохраните изменения, внесенные в ваш прокси API.

Настройка тайм-аута поддержания активности на процессорах сообщений

В этом разделе объясняется, как настроить тайм-аут поддержания активности на процессорах сообщений. Тайм-аут поддержания активности можно настроить с помощью свойства 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 .