package ego
Module Scheduler.BackoffSource
The module Backoff implements an exponential backoff scheduler. The scheduler works by tracking a maximum match limit, and (BEB) banning rules which exceed their limit.
Represents the persistent state of the scheduler - it really just tracks the match limit and ban_length parameters chosen by for this particular instantiation.
Represents the metadata about rules tracked by the scheduler.
with_params ~match_limit ~ban_length creates a new backoff scheduler with the threshold for banning rules set to match_limit and the length for which rules are banned set to ban_length.
default () returns a default instance of the backoff scheduler with the threshold for banning rules set to 1_000 and the initial ban_length set to 5.