Projects and work that has public information and/or artifacts available.
RSocket (previously ReactiveSocket)
RSocket is an application protocol providing Reactive Stream semantics over an asynchronous, binary boundary.
- Projects: https://github.com/RSocket
- Site: http://rsocket.io
- Protocol
- Motivations for creating a new protocol.
RxJava
Reactive Extensions for the JVM – a library for composing asynchronous and event-based programs using observable sequences for the Java VM.
- Code: https://github.com/ReactiveX/RxJava
- Site: http://reactivex.io
- Reference in ThoughtWorks Tech Radar
- Applying RxJava to Existing Applications at Philly ETE 2015 – Slides | Video
- Reactive Programming with Rx at QConSF 2014 – Slides | Video
- RxJava at GOTO Aarhus 2013 – Slides | Video
- Netflix Tech Blog: Reactive Programming in the Netflix API with RxJava
Reactive Streams
Reactive Streams is an initiative to provide a standard for asynchronous stream processing with non-blocking back pressure.
Hystrix & Fault Tolerance
Hystrix is a latency and fault tolerance library designed to isolate points of access to remote systems, services and 3rd party libraries, stop cascading failure and enable resilience in complex distributed systems where failure is inevitable.
- Code: https://github.com/Netflix/Hystrix
- Site: Hystrix Wiki
- Reference in ThoughtWorks Tech Radar
- Resilient by Design at React SF 2014 – Slides | Video
- Reactive Service Levels at React London 2014 – Slides | Video
- O'Reilly Radar Blog: Application Resilience in a Service-Oriented Architecture using Hystrix
- Netflix Tech Blog: Fault Tolerance in a High Volume, Distributed System
Netflix API/Edge Platform
Involved to varying degrees in the following:
- Fault Tolerance in Distributed Systems (see section on Hystrix above)
- Adoption of Reactive Programming (see section on RxJava above)
- Migration from One-Size-Fits-All REST to "experience oriented APIs"
- Routing with Application Logic - Zuul
- Predictive Autoscaling - Scryer
- Async IO - RxNetty
- Performance Analysis of Async IO - WSPerfLab and Results of Netty vs Tomcat (April 2015)
- Event Stream Processing and Operational Tooling
Related Presentations
- Evolution of the Netflix API - QCon SF 2013 – Slides | Video
- Resilience & Operations at Netflix with Hystrix - JavaOne 2013 – Slides with notes | Video
- Resilience & Operations at Netflix - Velocity 2013 Santa Clara – Slides with notes