|Reactive Design Patterns
Roland Kuhn and Jamie Allen
MEAP Began: March 2014
Softbound print: December 2015 (est.) | 325 pages | B&W
|Order now and start reading Reactive Design Patterns today through MEAP|
|MEAP + eBook only - $39.99|
|MEAP + Print book (includes eBook) when available - $49.99|
|* For more information, please see the MEAP FAQs page.|
|About MEAP Release Date Estimates|
TABLE OF CONTENTS, MEAP CHAPTERS & RESOURCES
|Table of Contents||Resources|
PART 1: INTRODUCTION
1 An Illustrated Example - FREE
2 Why Reactive - AVAILABLE
3 Tools of the Trade - AVAILABLE
PART 2: THE PHILOSOPHY IN A NUTSHELL
4 Message Passing - AVAILABLE
5 Location Transparency - AVAILABLE
6 Divide and Conquer - AVAILABLE
7 Principled Failure Handling - AVAILABLE
8 Delimited Consistency - AVAILABLE
9 Non-Determinism by Need - AVAILABLE
10 Message Flow - AVAILABLE
PART 3: PATTERNS
11 Testing Reactive Applications - AVAILABLE
12 Fault Tolerance and Recovery Patterns - AVAILABLE
13 Resource Management Patterns
14 Message Flow Patterns
15 Flow Control Patterns
16 Persistence Patterns
17 Patterns for Writing Actors
Modern distributed applications must deliver near-realtime performance while at the same time managing big data and high user loads spread across environments ranging from cloud systems to mobile devices. Unlike traditional enterprise applications which focus on decoupling their internal components by defining programming interfaces, reactive applications go one step further and decouple their components also at runtime. This makes it possible to react effectively and efficiently to failures, varying user demands, and changes in the application's execution environment. The resulting systems are highly concurrent and fault-tolerant, with minimal dependencies among individual system components. This is achieved by blending the use of message-passing concurrency between distributed computational units with the robustness of functional programming techniques within them.
- Learn about reactive system design entails and the theory behind its principles
- Discover best practices and patterns for building reactive applications
- Build applications that can withstand hardware or software failure at any level
- Fully utilize multicore hardware using asynchronous and message-driven solutions
- Scale applications under tremendous load up and down, in and out
The design patterns in this book were collected by the consultants and engineers of Typesafe during thousands of hours spent building enterprise-quality applications using Scala and Akka. Although many reactive patterns can be implemented using standard development tools like Java, others require the capabilities offered by a functional programming language like Scala and an Actor-based concurrency system like Akka.
Readers should be familiar with a standard programming language like Java, C++ or C# and be comfortable with the basics of distributed systems. Although most of the book's examples use the Scala language, no prior experience with Scala or Akka is required.
ABOUT THE AUTHORS
Dr. Roland Kuhn leads the Akka team at Typesafe. Together with Martin Odersky and Erik Meijer, Roland presented the Coursera course "Principles of Reactive Programming" and co-authored the "Reactive Manifesto." Jamie Allen is the Director of Consulting for Typesafe and author of "Effective Akka."
ABOUT THE EARLY ACCESS VERSION
This Early Access version of Reactive Design Patterns enables you to receive new chapters as they are being written. You can also interact with the authors to ask questions, provide feedback and errata, and help shape the final manuscript on the Author Online forum.
WANT TO LEARN MORE?
Sign up to read more content when it is released and to receive news about this book.