Akka Serialization with Scala | Rock the JVM

For Scala/Akka developers: maximize Akka performance! Integrate Avro, Kryo or Protobuf, or write your own serializer!

In this course, we will learn how to setup serialization for Akka, which will drastically improve the performance of your system. I’ve taken the undocumented knowledge of serialization and I’ve packed it into a concentrated course that will familiarize you with Avro, Kryo and Protobuf. You will learn to integrate them in your Akka system, compare them, and even write your own serializers.

What you’ll learn

  • Write custom serializers for Akka.
  • JSON serialization with Spray-JSON.
  • Protocol Buffers (protobuf) with Akka.
  • Avro and schema-based serialization.
  • Kryo for time/space-efficient serialization.
  • Benchmark serializers.

Course Content

  • Introduction –> 4 lectures • 1hr 14min.
  • Serialization –> 6 lectures • 2hr 26min.
  • Epilogue –> 1 lecture • 1min.

Auto Draft

Requirements

In this course, we will learn how to setup serialization for Akka, which will drastically improve the performance of your system. I’ve taken the undocumented knowledge of serialization and I’ve packed it into a concentrated course that will familiarize you with Avro, Kryo and Protobuf. You will learn to integrate them in your Akka system, compare them, and even write your own serializers.

This course is for Scala/Akka programmers who need to improve the performance of their systems. The Java serializer that comes by default is slow, uses a lot of memory and has security vulnerabilities. Any serious Akka development team should move away from Java serialization as soon as possible, and this course will show you how.

You probably know Akka already:

  • it speeds up the development of concurrent applications by as much as 10x
  • its demand has exploded
  • it’s a highly marketable skill
  • it’s incredibly fun – power in your hands!

I like to get to the point and get things done. This course

  1. deconstructs all concepts into the critical pieces you need
  2. selects the most important ideas and separates them into what’s simple but critical and what’s powerful
  3. sequences ideas in a way that “clicks” and makes sense throughout the process of learning
  4. applies everything in live code

The end benefits are still much greater:

  • an enhanced knowledge of Akka with integration of serializers
  • a more marketable resume
  • the best performance for your distributed and persistent systems

This course is for established programmers with experience with Scala and Akka at the level of the Rock the JVM courses. I already assume a solid understanding of general programming fundamentals.

This course is NOT for you if

  • you’ve never written Scala code before
  • you’ve never worked with Akka

The course is comprehensive, but you’ll always see me get straight to the point. So make sure you have a good level of focus and commitment to become a badass programmer.

I believe both theory and practice are important. That’s why you’ll get lectures with code examples, real life code demos and assignments, plus additional resources, instructions, exercises and solutions.

I’ve seen that my students are most successful – and my best students work at Google-class companies – when they’re guided, but not being told what to do. I have exercises waiting for you, where I offer my (opinionated) guidance but otherwise freedom to experiment and improve upon your code.

Definitely not least, my students are most successful when they have fun along the way!

So join me in this course and let’s rock the JVM!