O'Reilly logo

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Learning Path: Akka: Building Applications and Microservices with Akka - Know the art of creating applications and microservices and ensuring the applications and microservices adhere to the key principles.

Video Description

Know the art of creating applications and microservices

In Detail

If you’re looking at building distributed, concurrent, fault-tolerant and scalable applications with ease, Akka is the go-to tool for it. This Learning Path delivers a clear and practical introduction to the Akka toolkit, explaining the key components you need to know to get up and running with developing applications of your own. You will learn about the actor system, how to create hierarchical structures in Akka, and how to make routes in order to send messages to other actors. We will look at other use cases such as building an actor that can change its behavior during runtime. You will then create stateful actors, work with a cluster system, and work with remote actors.

Then, this Learning Path will make you understand how to build Reactive microservices using Akka and Akka HTTP, which adhere to the principles underlying the Reactive Manifesto. You will delve deeper into concepts such as Responsive, Resilient, Elastic, and Message-Driven and will see how microservices should be designed to adhere to those principles. By the end of this Path, you’ll be well-versed in creating applications and microservices.

Prerequisites: Basic knowledge of Java or Scala

Resources: Code downloads and errata:

  • Learning Akka

  • Building Microservice with AKKA HTTP

  • PATH PRODUCTS

    This path navigates across the following products (in sequential order):

  • Learning Akka (3h 18m)

  • Building Microservice with AKKA HTTP (1h 23m)

  • Table of Contents

    1. Chapter 1 : Learning Akka
      1. The Course Overview 00:03:22
      2. Understanding the Actor Model 00:03:20
      3. Concepts and Terminology 00:04:06
      4. Let's Create Hello World 00:03:24
      5. Actor System and Hierarchical Structure 00:04:35
      6. Actor Components and Lifecycle 00:03:36
      7. Creating an Actor with Props 00:04:12
      8. Talking to an Actor 00:04:57
      9. Supervision and Monitoring 00:06:00
      10. ActorRef Versus Actor Path Versus Actor Selection 00:05:04
      11. Sending Messages via Router 00:05:48
      12. Replacing Actor Behavior via become/unbecome 00:04:48
      13. Replacing Actor Behavior via FSM 00:04:48
      14. Introduction to Akka Persistence 00:04:27
      15. Creating Persistent Actors 00:04:27
      16. Playing with a Persistent Actor 00:04:22
      17. Persistence FSM 00:06:19
      18. Persistence Query 00:04:24
      19. Playing with Remote Actors 00:05:27
      20. Building a Cluster 00:06:10
      21. Adding Load Balancer to a Cluster Node 00:03:09
      22. Creating a Singleton Actor in the Cluster 00:05:45
      23. Cluster Sharding 00:05:49
      24. How to Test an Actor? 00:05:44
      25. Testing a Parent-child Relationship 00:03:27
      26. Testing FSM 00:04:25
      27. Multi Node Testing 00:06:32
      28. Introduction to Akka Streams 00:05:37
      29. Reactive Tweets 00:04:54
      30. Testing Streams 00:06:02
      31. Working with Graphs 00:04:56
      32. Working with Stream IO 00:04:17
      33. Introduction to Akka HTTP 00:04:04
      34. Working with Client-side API 00:05:59
      35. Working with Server-side API 00:05:02
      36. Let's Implement a REST API 00:05:05
      37. Let's Test Our REST API 00:03:32
      38. Balancing Workload Across Nodes 00:05:35
      39. Throttling Messages 00:04:26
      40. Shutdown Patterns 00:03:26
      41. Ordered Termination 00:03:45
      42. Scheduling Periodic Messages 00:02:57
    2. Chapter 2 : Building Microservice with AKKA HTTP
      1. The Course Overview 00:01:27
      2. Responsive 00:07:54
      3. Resilient 00:05:23
      4. Elastic 00:05:57
      5. Message Driven 00:06:45
      6. Putting All Reactive Principles Together 00:04:37
      7. Introduction to Akka 00:09:12
      8. Introduction to Akka HTTP 00:07:44
      9. Getting to Know Core API of Akka HTTP 00:08:02
      10. Creating Controllers for our REST Microservice 00:05:58
      11. Writing Tests for Our Microservice 00:07:09
      12. Making Our Service Comply with Reactive Manifesto Principles 00:05:24
      13. Writing 00:08:10