Как настроить время ожидания подключения в процессорах сообщений

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

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

Время ожидания подключения – это время, в течение которого Message Processor ждет установления связи с целевым сервером. Значение по умолчанию для свойства времени ожидания сетевого соединения в Message Processor – 3 секунд. Этот период ожидания применяется к серверным частям, настроенным в конфигурации целевой конечной точки и в правиле ServiceCallout прокси API.

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

  • В прокси-сервере API
    • в целевой конечной точке;
    • В правилах для приложения "ServiceCallout"
  • На процессоре сообщений

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

Название свойства Местоположение Описание
connect.timeout.millis Прокси-сервер API:
  • Целевая конечная точка
  • Правило: ServiceCallout

Максимальное время, в течение которого Message Processor ожидает подключения к целевому серверу.

По умолчанию это свойство принимает значение, заданное для свойства HTTPClient.connect.timeout.millis в Message Processor, где значение по умолчанию составляет 3 секунд.

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

HTTPClient.connect.timeout.millis Message Processor

Максимальное время, в течение которого Message Processor ожидает подключения к целевому серверу.

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

Значение по умолчанию – 3 секунд.

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

Подготовка

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

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

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

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

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

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

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

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

    <Properties>
      <Property name="connect.timeout.millis">5000</Property>
    </Properties>

    Поскольку свойство connect.timeout.millis задается в миллисекундах, значение для 5 секунд будет равно 5000.

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

    Пример конфигурации целевой конечной точки с использованием URL для внутреннего сервера

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

    Пример конфигурации целевой конечной точки с использованием целевого сервера

    <TargetEndpoint name="default">
      <HTTPTargetConnection>
        <LoadBalancer>
          <Server name="target1" />
          <Server name="target2" />
        </LoadBalancer>
        <Properties>
          <Property name="connect.timeout.millis">5000</Property>
        </Properties>
        <Path>/test</Path>
      </HTTPTargetConnection>
    </TargetEndpoint>
  4. Сохраните изменения, внесенные в прокси-сервер API.

Как настроить время ожидания подключения в правиле ServiceCallout прокси-сервера API

В этом разделе рассказывается, как настроить время ожидания подключения в правиле ServiceCallout прокси-сервера API. Время ожидания подключения можно настроить с помощью свойства connect.timeout.millis, которое представляет значение времени подключения в миллисекундах.

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

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

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

    <Properties>
      <Property name="connect.timeout.millis">5000</Property>
    </Properties>

    Поскольку свойство connect.timeout.millis задается в миллисекундах, значение для 5 секунд будет равно 5000.

    В примерах ниже показано, как настроить время ожидания подключения в правиле ServiceCallout прокси-сервера API:

    Пример конфигурации правила ServiceCallout с использованием URL для внутреннего сервера

    <ServiceCallout name="Service-Callout-1">
      <DisplayName>Service Callout-1</DisplayName>
      <HTTPTargetConnection>
        <Properties>
          <Property name="connect.timeout.millis">5000</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="connect.timeout.millis">5000</Property>
        </Properties>
      <Path>/test</Path>
      </HTTPTargetConnection>
    </ServiceCallout>
  4. Сохраните изменения, внесенные в прокси-сервер API.

Как настроить время ожидания подключения в процессорах сообщений

В этом разделе рассказывается, как настроить время ожидания подключения на процессорах сообщений. Время ожидания подключения можно настроить с помощью свойства conf_http_HTTPClient.connect.timeout.millis, которое представляет значение времени ожидания подключения в миллисекундах в компоненте Message Processor, используя токен в соответствии с синтаксисом, описанным в разделе Как настроить Edge.

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

  1. На компьютере Message Processor откройте в редакторе следующий файл: Если его ещё нет, создайте его.
    /opt/apigee/customer/application/message-processor.properties

    Например, чтобы открыть файл с помощью vi, введите следующее:

    vi /opt/apigee/customer/application/message-processor.properties
    
  2. Добавьте в файл свойств строку в следующем формате, заменив TIME_IN_MILLISECONDS на нужное значение:
    conf_http_HTTPClient.connect.timeout.millis=TIME_IN_MILLISECONDS

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

    conf_http_HTTPClient.connect.timeout.millis=5000
  3. Сохраните изменения.
  4. Убедитесь, что файл свойств принадлежит пользователю apigee, как показано ниже.
    chown apigee:apigee /opt/apigee/customer/application/message-processor.properties
    
  5. Перезапустите Message Processor, как показано ниже.
    /opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
    
  6. Если у вас несколько процессоров сообщений, повторите описанные выше действия для каждого из них.

Как проверить время ожидания подключения на процессорах сообщений

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

Даже если вы используете токен conf_http_HTTPClient.connect.timeout.millis, чтобы задать время ожидания подключения в Message Processor, вам нужно проверить, было ли для свойства HTTPClient.connect.timeout.millis задано новое значение.

  1. На компьютере Message Processor найдите свойство HTTPTransport.connect.timeout.millis в каталоге /opt/apigee/edge-message-processor/conf и проверьте, задано ли для него новое значение, как показано ниже:
    grep -ri "HTTPClient.connect.timeout.millis" /opt/apigee/edge-message-processor/conf
    
  2. Если новое значение времени ожидания подключения успешно задано для Message Processor, то в файле http.properties будет показано новое значение.

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

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

    В приведенном выше примере выходных данных обратите внимание, что для свойства HTTPClient.connect.timeout.millis задано новое значение 5000 в http.properties. Это означает, что время ожидания подключения успешно настроено на 5 секунд в процессоре сообщений.

  3. Если вы по-прежнему видите старое значение для свойства HTTPClient.connect.timeout.millis, убедитесь, что вы правильно выполнили все шаги, описанные в разделе Настройка времени ожидания подключения в процессорах сообщений. Если вы пропустили какой-либо шаг, повторите все действия заново.
  4. Если вы по-прежнему не можете изменить время ожидания подключения, обратитесь в службу поддержки Google Cloud Apigee Edge.