Most applications from a few years back had the luxury of the following:
- Multi-second response times
- Multiple hours of offline maintenance
- Smaller volumes of data
Times have changed. New devices (mobiles, tablets, and so on) and newer approaches (cloud-based) have emerged. In today's world, we are talking about:
- Sub-second response times
- 100% availability
- An exponential increase in data volumes
Different approaches have emerged during the last few years to meet these emerging challenges. While reactive programming is not really a new phenomenon, it is one of the approaches that have been successful in dealing with these challenges.
The Reactive Manifesto (http://www.reactivemanifesto.org) aims to capture common themes.
We believe that a coherent approach to systems architecture is needed, and we believe that all necessary aspects are already recognised...