Releases: nodeshift/opossum
Health Checks and Bug Fixes
Rolling percentile latency, bug fixes, timeout codes
Streaming Hystrix Data
Now with more cache
Caching and the Beginning of Rolling Stats
This release introduces caching to a circuit. It's simple. Just provide { cache: true }
in your options when creating the circuit, and the circuit will cache the first successful response it gets, and always use that. You can clear the cached value by calling circuit.clearCache()
. This may be useful in situations where up-to-the-millisecond values are not required. For example, a badge icon that displays a message count may choose to cache the value, and only update it once every 5 seconds.
// The circuit will cache the message count
const circuit = circuitBreaker( getMessageCount, { cache: true } );
// reset the cache every 5 seconds
const interval = setInterval( () => circuit.clearCache, 5000 );
Rolling stats have also been introduced in this release. This replaces the existing cumulative behavior of a circuit's status, in favor of snapshots every X
milliseconds, where X
defaults to 10000, e.g. 10 seconds. This allows for rolling average calculations on important statistics for Hystrix dashboard, and is in pursuit of
#32 (but does not complete it).
Bug Fixes
- circuit should emit failure event on fallback (f2594d8)
- include the error when emitting the 'fallback event' (40eb2eb)
- promise should reject when action throws (58dab98)
- typo copy past duplicated property (54a27b9)
Features
CircuitBreakers all the way down
Summary
This release allows you to supply a CircuitBreaker
instance as the fallback function.
Also, you get a full featured browser example at examples/jquery
. Check it out.
Commits
Changelog
https://github.com/bucharest-gold/opossum/blob/master/CHANGELOG.md#050-2016-12-22
Full featured browser distribution
Summary
Bugs in the initial release of the browser distribution have been addressed.
Commits
Changelog
https://github.com/bucharest-gold/opossum/blob/master/CHANGELOG.md#040-2016-12-20
Initial browser distribution
Summary
This release contains an initial implementation of the browser distribution.
Commits
Changelog
https://github.com/bucharest-gold/opossum/blob/master/CHANGELOG.md#030-2016-12-16
Minor Update
Fluency
- return 'this' from CircuitBreaker.fallback (159c006)