Reactive Design Patterns video edition

Video description

"Does an excellent job explaining Reactive architecture and design, starting with first principles and putting them into a practical context."
From the Foreword by Jonas Boner, creator of Akka

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.

Inside:
  • 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
Most examples use Scala, Java, and Akka. Readers should be familiar with distributed systems.

Dr. Roland Kuhn led the Akka team at Lightbend and coauthored the Reactive Manifesto. Brian Hanafee and Jamie Allen are experienced distributed systems architects.

If the 'Reactive Manifesto' gave us a battle cry, this work gives us the strategic handbook for battle.
Joel Kotarski, The Rawlings Group

An engaging tour of distributed computing and the building blocks of responsive, resilient software.
William Chan, LinkedIn

This book is so reactive, it belongs on the left-hand side of the periodic table!
Andy Hicks, Tanis Systems

NARRATED BY MARK THOMAS

Table of contents

  1. PART 1: INTRODUCTION
    1. Chapter 1 - Why Reactive?
    2. Chapter 1 - Coping with failures
    3. Chapter 1 - Avoiding the ball of mud
    4. Chapter 2 - A walk-through of the Reactive Manifesto
    5. Chapter 2 - Exploiting parallelism
    6. Chapter 2 - The limits of parallel execution
    7. Chapter 2 - Reacting to failure
    8. Chapter 2 - Compartmentalization and bulkheading
    9. Chapter 2 - Losing strong consistency
    10. Chapter 2 - ACID 2.0
    11. Chapter 2 - Accepting updates
    12. Chapter 3 - Tools of the trade
    13. Chapter 3 - Immutability
    14. Chapter 3 - Responsiveness to users
    15. Chapter 3 - Event loops
    16. Chapter 3 - Futures and promises
    17. Chapter 3 - The Actor model
  2. PART 2: THE PHILOSOPHY IN A NUTSHELL
    1. Chapter 4 - Message passing
    2. Chapter 4 - Synchronous vs. asynchronous
    3. Chapter 4 - Delivery guarantees
    4. Chapter 4 - Events as messages
    5. Chapter 5 - Location transparency
    6. Chapter 5 - Explicit message passing to the rescue
    7. Chapter 5 - Message loss
    8. Chapter 5 - Location transparency makes testing simpler
    9. Chapter 6 - Divide and conquer
    10. Chapter 6 - Dependencies vs. descendant modules
    11. Chapter 6 - Advantages of specification and testing
    12. Chapter 7 - Principled failure handling
    13. Chapter 7 - Ownership implies lifecycle control
    14. Chapter 8 - Delimited consistency
    15. Chapter 8 - Segregating responsibilities
    16. Chapter 9 - Nondeterminism by need
    17. Chapter 9 - Sharing nothing simplifies concurrency
    18. Chapter 10 - Message flow
    19. Chapter 10 - Identifying resilience limitations
  3. PART 3: PATTERNS
    1. Chapter 11 - Testing reactive applications
    2. Chapter 11 - String tests
    3. Chapter 11 - Test environment
    4. Chapter 11 - The crux of choosing timeouts
    5. Chapter 11 - Asserting the absence of a message
    6. Chapter 11 - Fully asynchronous tests
    7. Chapter 11 - Testing nondeterministic systems
    8. Chapter 11 - Testing elasticity
    9. Chapter 11 - Infrastructure resilience
    10. Chapter 12 - Fault tolerance and recovery patterns
    11. Chapter 12 - The Error Kernel pattern
    12. Chapter 12 - The Let-It-Crash pattern
    13. Chapter 12 - The pattern, revisited
    14. Chapter 12 - The Circuit Breaker pattern
    15. Chapter 12 - The pattern, revisited
    16. Chapter 13 - Replication patterns
    17. Chapter 13 - Applying the pattern
    18. Chapter 13 - The pattern, revisited
    19. Chapter 13 - Multiple-Master Replication patterns
    20. Chapter 13 - Replication with conflict detection and resolution
    21. Chapter 13 - Conflict-free replicated data types
    22. Chapter 13 - The Active–Active Replication pattern
    23. Chapter 13 - The pattern, revisited
    24. Chapter 14 - Resource-management patterns
    25. Chapter 14 - Applying the pattern
    26. Chapter 14 - The pattern, revisited
    27. Chapter 14 - The Resource Loan pattern
    28. Chapter 14 - The pattern, revisited
    29. Chapter 14 - The Complex Command pattern
    30. Chapter 14 - Applying the pattern
    31. Chapter 14 - The pattern, revisited
    32. Chapter 14 - The Resource Pool pattern
    33. Chapter 14 - The pattern, revisited
    34. Chapter 14 - Patterns for managed blocking
    35. Chapter 14 - The pattern, revisited
    36. Chapter 15 - Message flow patterns
    37. Chapter 15 - Common instances of the pattern
    38. Chapter 15 - The Self-Contained Message pattern
    39. Chapter 15 - The Ask pattern
    40. Chapter 15 - The Forward Flow pattern
    41. Chapter 15 - The Aggregator pattern
    42. Chapter 15 - The Saga pattern
    43. Chapter 15 - The pattern, revisited
    44. Chapter 15 - The Business Handshake pattern
    45. Chapter 15 - The pattern, revisited
    46. Chapter 16 - Flow control patterns
    47. Chapter 16 - The Managed Queue pattern
    48. Chapter 16 - The Drop pattern
    49. Chapter 16 - The pattern, revisited
    50. Chapter 16 - The Throttling pattern
    51. Chapter 17 - State management and persistence patterns
    52. Chapter 17 - The Sharding pattern
    53. Chapter 17 - The Event-Sourcing pattern
    54. Chapter 17 - The Event Stream pattern

Product information

  • Title: Reactive Design Patterns video edition
  • Author(s): Dr. Roland Kuhn, Brian Hanafee, Jamie Allen
  • Release date: February 2017
  • Publisher(s): Manning Publications
  • ISBN: None