Hystrix – managing failures in distributed systems

We live in a distributed world where integration between components is ubiquitous. Assuming all parts of the system are working at the same time and are not overloaded is too optimistic. Our application must be prepared for failures, must tolerate, handle and test exceptional conditions.

Hystrix is a library that provides complete set of tools for managing failures. It monitors potentially problematic sections of code (like network calls), measures execution time and error rate. It can pro-actively turn off malfunctioning features for a period of time and keep system resources bound. Built-in real-time monitoring is also really useful to quickly troubleshoot anomalies and bottlenecks.

During this session we will focus on live demos and code samples, no slides are planned.

Tomasz Nurkiewicz 

Spent half of his life on programming, for the last 8 years professionally in Java land. Loves back-end, tolerates JavaScript. Passionate about alternative JVM languages. Disappointed with the quality of software written these days (so often by himself!), hates long methods and hidden side effects. Interested in charting, data analysis and reporting. Technical reviewer of «Learning Highcharts» and «Getting started with IntelliJ IDEA». Believes that computers were invented so that developers can automate boring and repetitive tasks. Also their own.

On a daily basis works in financial sector. Involved in open-source, DZone’s Most Valuable Blogger, used to be very active on StackOverflow. Likes programming. Claims that code not tested automatically is not a feature but just a rumour.