На тайм-аут сеанса влияют параметры SessionTimeout
и TimeoutMs
файла конфигурации режима HTTP и заголовок запроса X-KAV-Timeout
. В этом разделе объясняется, как настроить тайм-аут сеанса работы Kaspersky Scan Engine в режиме HTTP с использованием этих значений.
SessionTimeout
Этот параметр файла конфигурации задает максимальное время, которое Kaspersky Scan Engine может потратить на получение запроса на сканирование объекта и на обработку этого запроса (операции сканирования) в миллисекундах. Тайм-аут действует для всех объектов, отправляемых в Kaspersky Scan Engine.
Рассмотрим следующий пример: для параметра SessionTimeout
установлено значение 4000
(четыре секунды), а запрос не содержит заголовка X-KAV-Timeout
. Kaspersky Scan Engine тратит одну секунду на получение запроса. Затем Kaspersky Scan Engine тратит на сканирование оставшиеся три секунды.
X-KAV-Timeout
В этом заголовке задается время, которое Kaspersky Scan Engine может потратить на операцию сканирования (в миллисекундах), независимо от значения параметра SessionTimeout
.
Диапазон значений этого параметра от 0
до 4294967295
(32-разрядное целое положительное число).
Рассмотрим следующий пример: значение SessionTimeout
установлено на 4000
(четыре секунды), а значение X-KAV-Timeout
установлено на 10000
(10 секунд). Kaspersky Scan Engine тратит одну секунду на получение запроса. Затем Kaspersky Scan Engine тратит на сканирование 10 секунд (значение X-KAV-Timeout
).
Если SessionTimeout
превышен во время приема запроса, сеанс закрывается независимо от значения X-KAV-Timeout
.
Рассмотрим следующий пример: значение SessionTimeout
установлено на 4000
(четыре секунды), а значение X-KAV-Timeout
установлено на 10000
(10 секунд). Kaspersky Scan Engine тратит четыре секунды на получение запроса, и сеанс закрывается из-за превышения SessionTimeout
.
Вы можете выбрать значение X-KAV-Timeout
в зависимости от размера файлов, которые хотите просканировать. Например, Kaspersky Scan Engine может потребовать 10 секунд для сканирования большого файла или 0,1 секунды для сканирования небольшого файла.
TimeoutMs
По умолчанию Kaspersky Scan Engine поддерживает постоянные соединения Keep-Alive, поэтому он может обрабатывать несколько объектов один за другим, используя одно и то же соединение.
Для каждого нового объекта Kaspersky Scan Engine запускает новый SessionTimeout
. После того как Kaspersky Scan Engine отправит результаты сканирования, соединение будет оставаться открытым в течение всего времени, указанного в параметре TimeoutMs
, даже если время ожидания SessionTimeout
уже истекло. Если новый объект был получен до истечения срока действия TimeoutMs
, начинается новый SessionTimeout
, пока то же соединение остается открытым.
Если поддержка постоянных соединений Keep-Alive выключена, Kaspersky Scan Engine закрывает соединение по истечении времени SessionTimeout
.