Post Thumbnail

Экспоненциальная задержка с добавлением случайного разброса (jitter) — это стандартный подход при вызовах сервисов.

Но его можно сделать гораздо проще с помощью таблицы предопределённых значений. Такой подход обладает несколькими преимуществами. Во-первых, код становится значительно проще — исчезает необходимость отслеживать состояние между итерациями цикла. Во-вторых, логика работы становится более прозрачной — сразу видно, какие задержки будут применяться. В-третьих, модификация поведения требует лишь правки значений в таблице, что снижает вероятность ошибок. Наконец, подобная реализация более надёжна — ошибка в расчётах не будет накапливаться в последующих итерациях.

Когда дело касается небольшого фиксированного набора значений, табличный подход часто оказывается предпочтительнее генерации значений в рантайме. Это делает код чище, понятнее и устойчивее к ошибкам.

Похожее

Post Thumbnail

Часовые пояса

Ошибка с часовым поясом в работе - это тот урок, который не забудешь никогда. Из...

Post Thumbnail

Выжимаем Go

В этой статье мы рассмотрим некоторые оптимизации, которые могут пригодиться при...

Post Thumbnail

Ro в действии

На прошлой неделе писал про пакет Ro который добавляет в ваши программы щепотку ...