sadman, Глеб подтверждает лишь то, что сказано Вами в первом предложении, но нигде не говорит того, что сказано во втором предложении:
Я ковырялся в исходниках агента Zabbix, могу подтвердить: да, активные проверки выполняются в один поток (точнее, по одному потоку на каждый активный Zabbix-сервер, но сейчас это не важно). Важно другое: если в течение выполнения какой-то проверки настало время выполняться ещё чему-то, то это что-то пропущено не будет, а будет поставлено в очередь и выполнено по завершении текущей проверки. Т.е. никто не гарантирует, что проверки будут выполняться абсолютно точно с тем интервалом, который задан: они не будут выполняться чаще, это да, но, возможно, что будут выполняться немного реже. Единственный вариант, когда какие-то проверки из-за "долгоиграющего" айтема могут быть пропущены, я вижу таким: один из айтемов проверяется относительно долго (скажем, 20 секунд), а для другого интервал обновления задан очень короткий (скажем, 5 секунд), - тогда да, пока проверяется первый будут пропуски для второго. Если же для второго интервал обновления задан, скажем, 5 минут, и время его проверки выпадает как раз на тот момент, когда началась проверка для первого айтема, то данный конкретный раз этот второй айтем получит значение не строго через 5 минут, а через 5 минут и 20 секунд. Как-то так.
Активные проверки выполняются в один поток. Если одна из них выполняется достаточно долго, то запуски всех остальных, должные произойти в то же время, будут пропущены.
Comment