Comments (2)
Hey Louis,
Thanks for asking. In this case, levee doesn't hold an opinion as to how granular each breaker behaves. In the example you can see the get
is wrapped, meaning all endpoints are managed using a single breaker. This is probably too coarse as different hosts and resources have significantly different SLAs, meaning one resource could trip the breaker blocking get
from reaching the entire internet. (That said, it makes for a simple example).
Where I work, when used with HTTP, AFAIK we have a breaker per resource as individual endpoints within a service do varying amounts of work, have different SLAs, and may require distinctly different timeouts. Then we apply smart defaults for a given service (all endpoints), and allow configuration individual endpoints on an as needed basis. This provides granular control, but it also (via stats) gives insight into the behavior of individual endpoints, which can be useful.
I hope that helps, but if not let me know!
from levee.
@totherik question on this - does the path
(first param to run
) need to be unique for each resource in order to prevent one service from tripping a circuitbreaker on another ?
from levee.
Related Issues (11)
- Support for streams HOT 1
- Basic example doesn't work HOT 1
- Levee is a synchronous library HOT 1
- Support Promises HOT 2
- hoek version needs to be updated, current version pollutes `object` prototype
- Question about `circuit.run` HOT 3
- Can I do POST requests? HOT 1
- Support for running isFailure when request times out
- Support for EventEmitters HOT 2
- Adding circuit status to stats will be helpful HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from levee.