|
|
|
|
|
by Fluxx
4952 days ago
|
|
It's not revolutionary, but it does a lot of things right and has more features that what you mentioned above: * maintains a semaphore of currently processing requests, and will immediately fail a request if the semaphore is full. * tracks service latency and other statistics for you * maintains a circuit breaker to immediately fail requests if the breaker is open (based on statistics) * watches for health to be restored of the 3rd party service and allows requests to it again. * built in request isolation via threadpools * built in request collapsing and caching Overall I like this cause it's a great demonstration of how to think about, and engineer for, failure in a distributed system. |
|