DESCRIPTION

Modern distributed applications must deliver near-realtime performance while simultaneously 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.


Reactive Design Patterns is a clearly-written guide for building message-driven distributed systems that are resilient, responsive, and elastic. It contains 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―in some cases, Java, JavaScript, and Erlang. Software engineers and architects will learn patterns that address day-to-day distributed development problems in a fault-tolerant and scalable way. Project leaders and CTOs will gain a deeper understanding of the reactive design philosophy.


KEY FEATURES

Offers best patterns for building reactive applications

All patterns include concrete examples

Discover best practices

Explains theory behind reactive system design principles


AUDIENCE

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 TECHNOLOGY

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.


Table of Contents

PART 1 INTRODUCTION

1 ■ Why Reactive?

2 ■ A walk-through of the Reactive Manifesto

3 ■ Tools of the trade

PART 2 THE PHILOSOPHY IN A NUTSHELL

4 ■ Message passing

5 ■ Location transparency

6 ■ Divide and conquer

7 ■ Principled failure handling

8 ■ Delimited consistency

9 ■ Nondeterminism by need

10 ■ Message flow

PART 3 PATTERNS

11 ■ Testing reactive applications

12 ■ Fault tolerance and recovery patterns

13 ■ Replication patterns

14 ■ Resource-management patterns

15 ■ Message flow patterns

16 ■ Flow control patterns

17 ■ State management and persistence patterns


About the Authors

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."

ISBN

9781617291807

برند

Manning

تعداد صفحات

387

سال

2017

course image

ایزی اگزم

90%رضایت مشتریان عملکرد عالی

نام مولف:

John Priece

نام ناشر:

Manning

قیمت فروشنده

30,000 تومان