Post Thumbnail

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

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

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

Похожее

Post Thumbnail

Новый JSON

Ребята из Go-команды (Joe Tsai, Daniel Martí и другие крутые инженеры) замутили ...

Post Thumbnail

Игры на Go

Статья про написание web-игр на Go. Ничего особо сложного, но почитать интересно...