Reactive Design Patterns

  • 13h 14m 7s
  • Brian Hanafee, Dr. Roland Kuhn, Jamie Allen
  • Manning Publications
  • 2018

Reactive Design Patterns is a clearly written guide for building message-driven distributed systems that are resilient, responsive, and elastic. In this book you'll find patterns for messaging, flow control, resource management, and concurrency, along with practical issues like test-friendly designs. All patterns include concrete examples using Scala and Akka.

Modern web applications potentially serve a vast numbers of users - and they need to keep working as servers fail and new ones come Online, users overwhelm limited resources, and information is distributed globally. A Reactive application adjusts to partial failures and varying loads, remaining responsive in an ever-changing distributed environment. The secret is message-driven architecture - and design patterns to organize it.

Reactive Design Patterns presents the principles, patterns, and best practices of Reactive application design. You'll learn how to keep one slow component from bogging down others with the Circuit Breaker pattern, how to shepherd a many-staged transaction to completion with the Saga pattern, how to divide datasets by Sharding, and more. You'll even see how to keep your source code readable and the system testable despite many potential interactions and points of failure.

What you'll learn from this audiobook:

  • The definitive guide to the Reactive Manifesto
  • Patterns for flow control, delimited consistency, fault tolerance, and much more
  • Hard-won lessons about what doesn't work
  • Architectures that scale under tremendous load

In this Audiobook

  • Chapter 1 - Why Reactive?
  • Chapter 2 - A Walk-Through of the Reactive Manifesto
  • Chapter 3 - Tools of the Trade
  • Chapter 4 - Message Passing
  • Chapter 5 - Location Transparency
  • Chapter 6 - Divide and Conquer
  • Chapter 7 - Principled Failure Handling
  • Chapter 8 - Delimited Consistency
  • Chapter 9 - Nondeterminism by Need
  • Chapter 10 - Message Flow
  • Chapter 11 - Testing Reactive Applications
  • Chapter 12 - Fault Tolerance and Recovery Patterns
  • Chapter 13 - Replication Patterns
  • Chapter 14 - Resource-Management Patterns
  • Chapter 15 - Message Flow Patterns
  • Chapter 16 - Flow Control Patterns
  • Chapter 17 - State Management and Persistence Patterns