Skip to content

Commit 9e43b12

Browse files
SixOnMyfaceStepan Beloyarov
authored andcommitted
YDBDOCS-1541-Add-Note-Tip (#27952)
Co-authored-by: Stepan Beloyarov <beloyarovstep@yandex-team.ru> (cherry picked from commit 68aef2e)
1 parent 178ec40 commit 9e43b12

File tree

1 file changed

+11
-1
lines changed

1 file changed

+11
-1
lines changed

ydb/docs/ru/core/dev/timeouts.md

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,9 +23,19 @@
2323

2424
На каждый запрос клиент должен выставить транспортный таймаут. Данное значение позволяет определить количество времени, которое клиент готов ждать ответа от сервера. Если за данное время сервер не ответил, то клиенту будет возвращена транспортная ошибка c кодом ``DeadlineExceeded``. Важно выставить такое значение клиентского таймаута чтоб при нормальной работе приложения и сети транспортные таймауты не срабатывали.
2525

26+
{% note tip %}
27+
28+
Лучше выставлять транспортный таймаут с запасом относительно времени (измеренного во время нагрузочного тестирования или тестирования на отказ) ответа на запрос.
29+
30+
Например, можно использовать удвоенное значение 99-го перцентиля времени ответа. Иными словами, таймаут должен равняться $2 × P99$
31+
32+
Время ответа для конкретного запроса нужно измерять в коде клиента (не стоит использовать метрики времени ответа, которые предоставляет сервер, или данные из статистики запроса).
33+
34+
{% endnote %}
35+
2636
## Применение таймаутов {#usage}
2737

28-
Всегда рекомендуется устанавливать и таймаут на операцию и транспортный таймаут. Значение транспортного таймаута следует делать на 50-100 миллисекунд больше чем значение таймаута на операцию, чтобы оставался некоторый запас времени, за который клиент сможет получить серверную ошибку c кодом ``Timeout``.
38+
Всегда рекомендуется устанавливать и таймаут на операцию, и транспортный таймаут. Значение транспортного таймаута следует делать на 50-100 миллисекунд больше, чем значение таймаута на операцию, чтобы оставался некоторый запас времени, за который клиент сможет получить серверную ошибку c кодом ``Timeout``.
2939

3040
Пример использования таймаутов:
3141

0 commit comments

Comments
 (0)