rubyist/circuitbreaker — pull request #11 by rubyist (2014-08-03 21:37:52+00:00)
Title: Implement a FrequencyBreaker

A FrequencyBreaker is a ThresholdBreaker where the threshold must be met within a certain period of time in order to trip the breaker. For example, 5 failures in 1 minute. If the 5th failure comes in at 1:01 after the first failure, the breaker will not trip and the timer will reset.

Some code duplication can probably be removed by reimplementing the ThresholdBreaker as a FrequencyBreaker with a 0 duration, rather than implementing a FrequencyBreaker as ThresholdBreaker with a time limit (as the first commit has it).