Scala Reactive Programming: Build scalable, functional reactive microservices with Akka, Play, and Lagom
Build fault-tolerant, robust, and distributed applications in Scala
Reactive programming is a scalable, fast way to build applications, and one that helps us write code that is concise, clear, and readable. It can be used for many purposes such as GUIs, robotics, music, and others, and is central to many concurrent systems. This book will be your guide to getting started with Reactive programming in Scala.
You will begin with the fundamental concepts of Reactive programming and gradually move on to working with asynchronous data streams. You will then start building an application using Akka Actors and extend it using the Play framework. You will also learn about reactive stream specifications, event sourcing techniques, and different methods to integrate Akka Streams into the Play Framework. This book will also take you one step forward by showing you the advantages of the Lagom framework while working with reactive microservices. You will also learn to scale applications using multi-node clusters and test, secure, and deploy your microservices to the cloud.
By the end of the book, you will have gained the knowledge to build robust and distributed systems with Scala and Akka.
This book is for Scala developers who would like to build fault-tolerant, scalable distributed systems. No knowledge of Reactive programming is required.
Chapter 1 Getting Started with Reactive and FP
Chapter 2 Functional Scala
Chapter 3 Asynchronous Programming with Scala
Chapter 4 Building Reactive Applications with Akka
Chapter 5 Adding Reactiveness with RxScala
Chapter 6 Extending Application with Play
Chapter 7 Working with Reactive Streams
Chapter 8 Integrating Akka Streams to Play Application
Chapter 9 Reactive Microservices With Lagom
Chapter 10 Testing Reactive Microservices
Chapter 11 Managing Microservices in ConductR
Chapter 12 Reactive Design Patterns & Best Practices
Chapter 13 Appendix A-Scala Plugin for IntelliJ IDEA
Chapter 14 Appendix B- Installing Robomongo