From 9e43b1223534496bb6d2fba3a9a1d61be68917e2 Mon Sep 17 00:00:00 2001 From: SixOnMyface <103491956+SixOnMyface@users.noreply.github.com> Date: Thu, 6 Nov 2025 15:38:28 +0300 Subject: [PATCH] YDBDOCS-1541-Add-Note-Tip (#27952) Co-authored-by: Stepan Beloyarov (cherry picked from commit 68aef2e427b046da793d103a48a534440b6929da) --- ydb/docs/ru/core/dev/timeouts.md | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/ydb/docs/ru/core/dev/timeouts.md b/ydb/docs/ru/core/dev/timeouts.md index 10ab38e20b17..11fd9348fe96 100644 --- a/ydb/docs/ru/core/dev/timeouts.md +++ b/ydb/docs/ru/core/dev/timeouts.md @@ -23,9 +23,19 @@ На каждый запрос клиент должен выставить транспортный таймаут. Данное значение позволяет определить количество времени, которое клиент готов ждать ответа от сервера. Если за данное время сервер не ответил, то клиенту будет возвращена транспортная ошибка c кодом ``DeadlineExceeded``. Важно выставить такое значение клиентского таймаута чтоб при нормальной работе приложения и сети транспортные таймауты не срабатывали. +{% note tip %} + +Лучше выставлять транспортный таймаут с запасом относительно времени (измеренного во время нагрузочного тестирования или тестирования на отказ) ответа на запрос. + +Например, можно использовать удвоенное значение 99-го перцентиля времени ответа. Иными словами, таймаут должен равняться $2 × P99$ + +Время ответа для конкретного запроса нужно измерять в коде клиента (не стоит использовать метрики времени ответа, которые предоставляет сервер, или данные из статистики запроса). + +{% endnote %} + ## Применение таймаутов {#usage} -Всегда рекомендуется устанавливать и таймаут на операцию и транспортный таймаут. Значение транспортного таймаута следует делать на 50-100 миллисекунд больше чем значение таймаута на операцию, чтобы оставался некоторый запас времени, за который клиент сможет получить серверную ошибку c кодом ``Timeout``. +Всегда рекомендуется устанавливать и таймаут на операцию, и транспортный таймаут. Значение транспортного таймаута следует делать на 50-100 миллисекунд больше, чем значение таймаута на операцию, чтобы оставался некоторый запас времени, за который клиент сможет получить серверную ошибку c кодом ``Timeout``. Пример использования таймаутов: