• Contents
  • Flow Chart
  • 1. Construct a HystrixCommand or HystrixObservableCommand Object
  • 2. Execute the Command
  • 3. Is the Response Cached?
  • 4. Is the Circuit Open?
  • 5. Is the Thread Pool/Queue/Semaphore Full?
  • 6. HystrixObservableCommand.construct() or HystrixCommand.run()
  • 7. Calculate Circuit Health
  • 8. Get the Fallback
  • 9. Return the Successful Response
  • Sequence Diagram
  • Circuit Breaker
  • Isolation
  • Threads & Thread Pools
  • Benefits of Thread Pools
  • Drawbacks of Thread Pools
  • Cost of Threads
  • Semaphores
  • Request Collapsing
  • Sequence Diagram
  • Why Use Request Collapsing?
  • Global Context (Across All Tomcat Threads)
  • User Request Context (Single Tomcat Thread)
  • Object Modeling and Code Complexity
  • What Is the Cost of Request Collapsing?
  • Collapser Flow
  • Request Caching