Вы просматриваете документацию Apigee Edge .
Перейдите к документации Apigee X. информация
В этом документе объясняется, как настроить тайм-аут соединения для процессоров сообщений Apigee Edge.
Тайм-аут соединения представляет собой время, в течение которого процессор сообщений ожидает установления соединения с целевым сервером. Значение по умолчанию свойства тайм-аута соединения в процессоре сообщений составляет 3
секунды. Этот период ожидания применим к внутренним серверам, настроенным в конфигурации целевой конечной точки и в политике ServiceCallout
вашего прокси-сервера API.
Время ожидания соединения для процессоров сообщений можно увеличить или уменьшить по сравнению со значением по умолчанию, равным 3
секундам, в зависимости от ваших потребностей. Его можно настроить следующими способами:
- В API-прокси
- В целевой конечной точке
- В политике
ServiceCallout
- О процессоре сообщений
Следующие свойства управляют временем ожидания соединения на процессорах сообщений:
Имя свойства | Расположение | Описание |
---|---|---|
connect.timeout.millis | API-прокси:
| Это максимальное время, в течение которого процессор сообщений ожидает соединения с целевым сервером. По умолчанию это свойство принимает значение, установленное для свойства Если это свойство изменено с использованием нового значения тайм-аута для целевого сервера, связанного с прокси-сервером API, это повлияет на время подключения только для этого целевого сервера. |
HTTPClient.connect.timeout.millis | Процессор сообщений | Это максимальное время, в течение которого процессор сообщений ожидает подключения к целевому серверу. Это свойство используется для всех прокси-серверов API, работающих на этом процессоре сообщений. Значение этого свойства по умолчанию — Вы можете либо изменить это свойство, как описано в разделе «Настройка тайм-аута соединения на процессорах сообщений» ниже, либо перезаписать это значение, задав свойство |
Прежде чем начать
Прежде чем использовать действия, описанные в этом документе, убедитесь, что вы понимаете следующие темы:
- Если вы не знакомы с тайм-аутом соединения, см. описание свойства
connect.timeout.millis
в Спецификации свойства транспорта TargetEndpoint . - Если вы не знакомы с настройкой свойств Edge в частном облаке, прочтите статью «Как настроить Edge» .
Настройка таймаута соединения в API-прокси
Таймаут соединения можно настроить в прокси API в следующих местах:
- Целевая конечная точка
- Политика
ServiceCallout
Настройка тайм-аута соединения в целевой конечной точке прокси API
В этом разделе объясняется, как настроить тайм-аут соединения в целевой конечной точке вашего прокси API. Тайм-аут соединения можно настроить с помощью свойства connect.timeout.millis
, которое представляет значение тайм-аута соединения в миллисекундах.
- В пользовательском интерфейсе Edge выберите конкретный прокси-сервер API, в котором вы хотите настроить новое значение времени ожидания соединения.
- Выберите конкретную целевую конечную точку, которую вы хотите изменить.
- Добавьте свойство
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>
- Сохраните изменения, внесенные в ваш прокси API.
Настройка таймаута соединения в политике ServiceCallout прокси API
В этом разделе объясняется, как настроить тайм-аут соединения в политике ServiceCallout
вашего прокси API. Тайм-аут соединения можно настроить с помощью свойства connect.timeout.millis
, которое представляет значение времени соединения в миллисекундах.
Чтобы настроить таймаут соединения в политике ServiceCallout
с помощью свойства connect.timeout.millis
:
- В пользовательском интерфейсе Edge выберите конкретный прокси-сервер API, в котором вы хотите настроить новое значение времени ожидания подключения для политики
ServiceCallout
. - Выберите конкретную политику
ServiceCallout
, которую вы хотите изменить. - Добавьте свойство
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>
- Сохраните изменения, внесенные в ваш прокси API.
Настройка тайм-аута соединения на процессорах сообщений
В этом разделе объясняется, как настроить тайм-аут соединения на процессорах сообщений. Тайм-аут соединения можно настроить с помощью свойства conf_http_HTTPClient.connect.timeout.millis
, которое представляет значение тайм-аута соединения в миллисекундах в компоненте «Обработчик сообщений», используя токен в соответствии с синтаксисом, описанным в разделе «Как настроить Edge» .
Чтобы настроить время ожидания соединения на процессорах сообщений, выполните следующие действия:
- На компьютере с процессором сообщений откройте в редакторе следующий файл. Если он еще не существует, то создайте его.
/opt/apigee/customer/application/message-processor.properties
Например, чтобы открыть файл с помощью
vi
, введите следующее:vi /opt/apigee/customer/application/message-processor.properties
- Добавьте в файл свойств строку в следующем формате, заменив значение TIME_IN_MILLISECONDS :
conf_http_HTTPClient.connect.timeout.millis=TIME_IN_MILLISECONDS
Например, чтобы изменить время ожидания соединения процессора сообщений на
5
секунд, добавьте следующую строку:conf_http_HTTPClient.connect.timeout.millis=5000
- Сохраните изменения.
- Убедитесь, что файл свойств принадлежит пользователю
apigee
, как показано ниже:chown apigee:apigee /opt/apigee/customer/application/message-processor.properties
- Перезапустите процессор сообщений, как показано ниже:
/opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
- Если у вас более одного процессора сообщений, повторите вышеуказанные шаги для всех процессоров сообщений.
Проверка тайм-аута соединения на процессорах сообщений
В этом разделе объясняется, как проверить, что время ожидания соединения было успешно изменено на процессорах сообщений.
Несмотря на то, что вы используете токен conf_http_HTTPClient.connect.timeout.millis
для установки времени ожидания соединения в процессоре сообщений, вам необходимо проверить, установлено ли фактическое свойство HTTPClient.connect.timeout.millis
с новым значением.
- На компьютере с процессором сообщений найдите свойство
HTTPTransport.connect.timeout.millis
в каталоге/opt/apigee/edge-message-processor/conf
и проверьте, установлено ли для него новое значение, как показано ниже:grep -ri "HTTPClient.connect.timeout.millis" /opt/apigee/edge-message-processor/conf
- Если новое значение тайм-аута соединения успешно установлено в процессоре сообщений, приведенная выше команда покажет новое значение в файле
http.properties
.Пример результата приведенной выше команды после того, как вы установили время ожидания соединения на
5
секунд, выглядит следующим образом:/opt/apigee/edge-message-processor/conf/http.properties:HTTPClient.connect.timeout.millis=5000
Обратите внимание, что в приведенном выше примере для свойства
HTTPClient.connect.timeout.millis
установлено новое значение5000
вhttp.properties
. Это означает, что тайм-аут соединения успешно настроен на процессоре сообщений и составляет5
секунд. - Если вы все еще видите старое значение свойства
HTTPClient.connect.timeout.millis
, убедитесь, что вы правильно выполнили все шаги, описанные в разделе Настройка тайм-аута соединения на процессорах сообщений . Если вы пропустили какой-либо шаг, повторите все шаги еще раз правильно. - Если вам по-прежнему не удается изменить время ожидания подключения, обратитесь в службу поддержки Google Cloud Apigee Edge .