uber-archive / hyperbahn

Service discovery and routing for large scale microservice operations
MIT License
396 stars 57 forks source link

Generalize circuit shorting, now with visibility #224

Closed jcorbin closed 8 years ago

jcorbin commented 8 years ago

Add a new "circuits.shorts" config option which should be a Map<String,bool> where each string is a "caller~service~endpoint" tuple with simple wildcarding supported.

This is then used to drive a new ShortedState circuit state which is an UnhealthyState extension which always passes traffic.

cc @kriskowal @rf @raynos

Raynos commented 8 years ago

Seems great. Especially the visibility bit.

jcorbin commented 8 years ago

Now with tests, ready for review.

jcorbin commented 8 years ago

Updated to minimize the new overhead to circuit creation time pointed out by @rf; assumptions being that the abundantly common case will fail the first callerName lookup.

kriskowal commented 8 years ago

:sheep: it