29 const std::string& name,
33 const StaticConfig& config,
34 dynamic_config::Source config_source,
35 std::function<v2::
Config(
const dynamic_config::Snapshot&)> config_getter
41 struct SeparateTimings {
42 utils::SlidingInterval<int64_t> long_timings
{kLongTimingsEpochs
};
43 utils::SlidingInterval<int64_t> short_timings
{kShortTimingsEpochs
};
46 utils::SlidingInterval<int64_t> current_load_;
47 std::unordered_map<std::string, SeparateTimings> separate_timings_;
48 std::optional<std::size_t> current_limit_;
49 std::size_t epochs_passed_{0};
51 dynamic_config::Source config_source_;
52 std::function<v2::
Config(
const dynamic_config::Snapshot&)> config_getter_;