
Introduction about the course tutor as a welcome message.
An introduction to AKKA
Let's clarify the terms. You will have a brief introduction on Concurrency, Thread, Multi-thread and parallel processing terminologies.
You will learn what the "Race Condition" is and get a real life example case
You will learn what are the AKKA modules/libraries.
An introduction to AKKA Actors Library.
You'll learn about how AKKA Actor works. A short brief about AKKA Classical and AKKA Typed actors
Java JDK Installation steps for Ubuntu.
We will develop our first AKKA project. This is one of the most important lesson, you will learn how to create actors in Java with a simple application.
We will develop our 2nd AKKA application which is more meaningful. This application will be base for our following lessons.
Routers are ready to use libraries to make multithread applications with AKKA. You will learn how to create multi-instance (multithread) actors.
Router can be created by code, or by config. You will learn about how to create multi-instance actors using the configuration file.
You will learn about the actor invocation patterns.
- Tell Pattern (Fire & Forget)
- Ask Pattern (Query response)
You will learn how to handle failures in actors with supervision strategies.
A detailed look into an AKKA Actor's life cycle from birth to termination
You will learn how to unit test akka actors in the system.
Discussion about all the possible out of the box routers and when to use which router.
Typed Actors are the new API. We'll have an introduction to AKKA Typed actors and develop our first application.
Invocation Patterns with AKKA Typed Actors.
You will also learn the best practice approaches the invocation of the AKKA Typed actors.
You will learn making actors multi-instance and developing multithread applications.
You will learn about the different type of routing strategies such as Round Robin, Random routing, Broadcasting and Group actors.
You will learn about how to handle failures in AKKA typed actors with supervision strategies.
You will learn the lifecycle of a typed actor from start to termination.
AKKA is a free & open source toolkit developed in Scala. It's running on JVM as scala utilises JVM. It is addressing the difficult and complicated problem of implementing concurrent systems.
Original toolkit is available with two DSLs : Scala and Java.
In this course you will learn how AKKA actors work and learn developing concurrents systems with AKKA with Java language.
AKKA Actors has two variations. They do the same thing but, two different way of implementation.
- AKKA Classical is the libraries up until version version 2.6 and including 2.6
- AKKA Typed is the oher libraries which is introduced with 2.5 as trial and 2.6 as official.
In this course you will learn the both variations. We will first start with AKKA Classical, then will see AKKA Typed actors.
Java knowledge is required as this course doesn't include Java training. It doesn't have to be at expert level but you should be able to develop basic applications on your own.
Knowing multithreading and concurrents systems can be helpful however it is not a requirement as the course covers the brief introduction on concurrency, threads, multi-threads and parallelism.
After teaching the AKKA Actors module, the course will go into details of scaling the actors for multithreading. You will learn about all possible routing options.
Following the routing for scaling AKKA Actors, you will learn about AKKA supervision strategies and life cycle of an actor.