Akka Classic Persistence with Scala

Akka Classic Persistence with Scala

Explore a revolutionary approach to persistence and storage with Akka Persistence and Scala, designed to seamlessly integrate with the Actor Model. Discover how this advanced solution enhances your system's efficiency and scalability by offering a robust framework tailored for modern application development.

Goal

Hello, Event Sourcing.

At this point, I won’t need to pitch Akka to you - no more threads and locks, we use Actors instead, this model is used all over the place in highly distributed systems, etc. etc. The next logical phase of the model is: how can we really adopt the “let it crash” philosophy and still keep the system up to date and not lose in-memory state?

Akka Persistence is the answer. This course is for the Scala & Akka developer who needs to make their system long-lived and fault-tolerant.

Skills You'll Learn

After this course, you’ll be able to:

  • use Event Sourcing, a new technique for storing data
  • use actors that never “truly” die
  • manage actor state recovery
  • use snapshots for speedy recovery
  • avoid the common pitfalls while working with persistent actors
  • integrate various storage systems with Akka, including Postgres and Cassandra
  • write your own custom data serialization
  • write robust architectures by detaching the business logic (domain) model from the data model
  • think long-term about your system events with Event Adapters
  • implement the CQRS pattern

Plus some extra perks:

  • You’ll have access to the entire code I write on camera (all 1276 lines of it)
  • You’ll be invited to our private Slack room where I’ll share latest updates, discounts, talks, conferences, and recruitment opportunities
  • (soon) You’ll have access to the takeaway slides
  • (soon) You’ll be able to download the videos for your offline view

Skills you’ll get:

  • Use Event Sourcing, a new technique for storing data
    • use Persistent Actors
    • manage Persistent Actors state and recovery
    • know the difference between a Command and an Event
    • use various persisting techniques, including async persisting
    • use snapshots for quick state recovery
  • Integrate production-ready stores
    • local stores with LevelDB
    • PostgreSQL
    • Cassandra
    • plus custom serialization techniques (advanced)
  • Use advanced patterns and best practices
    • effectively decouple the domain model from the data model
    • use Event Adapters for the long term
    • implement the CQRS pattern with Akka Persistence Query
  • Avoid crucial mistakes which can break your system
    • breaking actor encapsulation because of improper persisting
    • journal failures
    • recovery failures
    • journal corruption
    • losing snapshots
    • messing up the event order

all with live runnable examples and practiced with exercises.

Meet Rock the JVM

Daniel Ciocîrlan

I'm a software engineer and the founder of Rock the JVM.

I'm a software engineer and the founder of Rock the JVM. I started the Rock the JVM project out of love for Scala and the technologies it powers - they are all amazing tools and I want to share as much of my experience with them as I can.

As of February 2024, I've taught Java, Scala, Kotlin and related tech (e.g. Cats, ZIO, Spark) to 100000+ students at various levels and I've held live training sessions for some of the best companies in the industry, including Adobe and Apple. I've also taught university students who now work at Google and Facebook (among others), I've held Hour of Code for 7-year-olds and I've taught more than 35000 kids to code.

I have a Master's Degree in Computer Science and I wrote my Bachelor and Master theses on Quantum Computation. Before starting to learn programming, I won medals at international Physics competitions.

What's Included

Loading...

Take this course now!

Akka Classic Persistence with Scala - Lifetime License

Loading...

Just the course with a one-time payment

  • 7 hours of 4K content
  • 1276 lines of code written
  • All PDF slides
  • Access to the private Rock the JVM community
  • Free updates
  • Lifetime access
Get Now

All-Access Membership

Loading...
/monthly

All of the Rock the JVM courses

  • 320 hours of 4K content
  • 60660 lines of code written
  • All Scala courses
  • All Kotlin courses
  • All ZIO courses
  • All Typelevel courses
  • All Apache Flink courses
  • All Apache Spark courses
  • All Akka/Pekko courses
Join Now
The Akka/Apache Pekko Bundle

The Akka/Apache Pekko Bundle

Become a Akka/Apache Pekko and distributed JVM applications expert from scratch with our all-inclusive course bundle: master everything you need with Scala in one complete package, at a discount

100% Money Back Guarantee

If you're not happy with this course, I want you to have your money back. If that happens, contact me with a copy of your welcome email and I will refund you the course.

Less than 0.05% of students refunded a course on the entire site, and every payment was returned in less than 72 hours.

FAQ