Table of Contents

 

Copyright

Brief Table of Contents

Table of Contents

Foreword

Preface

Acknowledgments

About this Book

About the Authors

1. Introduction

Chapter 1. Why Reactive?

1.1. The anatomy of a Reactive application

1.2. Coping with load

1.3. Coping with failures

1.4. Making the system responsive

1.5. Avoiding the ball of mud

1.6. Integrating nonreactive components

1.7. Summary

Chapter 2. A walk-through of the Reactive Manifesto

2.1. Reacting to users

2.1.1. Understanding the traditional approach

2.1.2. Analyzing latency with a shared resource

2.1.3. Limiting maximum latency with a queue

2.2. Exploiting parallelism

2.2.1. Reducing latency via parallelization

2.2.2. Improving parallelism with composable Futures

2.2.3. Paying for the serial illusion

2.3. The limits of parallel execution

2.3.1. Amdahl’s Law

2.3.2. Universal Scalability Law

2.4. Reacting to failure

2.4.1. Compartmentalization and bulkheading

2.4.2. Using circuit breakers

2.4.3. Supervision

2.5. Losing strong consistency

2.5.1. ACID 2.0