Chapter 1. Why reactive?

 

This chapter covers

  • Understanding the Reactive Manifesto’s principles of reactive design
  • Using messaging, resilience, elasticity, and responsiveness
  • Building reactive systems with Akka.NET

Over the past several decades, computers and the internet have moved from a position of relative obscurity to being central to many aspects of modern life. We now rely on the internet for all manner of day-to-day tasks, including shopping and keeping in contact with friends and family. The proliferation of computers and devices capable of accessing the internet has increased pressure on software developers to create applications that are able to withstand this near-exponential growth: we must develop applications that can meet the demands of a modern populace dependent on technology. Demands range in scope from providing instantly available information to users, to services that are resilient to issues they might encounter from increased usage or an increased likelihood of failure, which may be caused by factors entirely outside of our control. When this is twinned with the demands of a rapidly evolving company trying to beat the competition to find gaps in an ever-changing marketplace, applications must not only satisfy demands imposed by users but also be sufficiently malleable that they can be rapidly adapted and modified to fill those gaps.

1.1. The heart of the Reactive Manifesto

1.2. Reactive systems vs. reactive programming

1.3. Applying Akka.NET

1.4. How does Akka.NET work?

Summary

sitemap