Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

YouTube

Building a Distributed Task Scheduler With Akka, Kafka, and Cassandra

Strange Loop Conference via YouTube

Overview

Explore the intricacies of building a distributed task scheduler using Akka, Kafka, and Cassandra in this 37-minute conference talk from Strange Loop. Dive into PagerDuty's journey of upgrading their microservices infrastructure to handle dynamically scheduled tasks for incident alerts, on-call notifications, and administrative chores. Learn how the Core team leveraged the strengths of these three technologies to overcome challenges in resilient, distributed task scheduling. Discover real-world solutions to critical issues such as dynamically adjusting for increased task load with zero downtime, guaranteeing task ordering across multiple servers, ensuring task execution during datacenter outages, and preventing task duplication. Gain insights into distributed system concepts applied in a practical context, including dynamic load balancing, datacenter failover strategies, and maintaining task order integrity. While some familiarity with distributed queueing and actor systems is beneficial, this talk offers valuable lessons for anyone interested in robust, scalable microservices architecture.

Syllabus

Intro
The Problem - Use Cases
The Problem - Ordering
The Problem - Assumptions
Problems with The Old Solution
The New Hotness - Technology
Dynamic Load - Kafka
Dynamic Load - Cassandra
Datacenter Outages - Kafka
Datacenter Outage - Cassandra
Datacenter Outage - Service
Task Ordering - Kafka
Task Ordering - Service
Scheduler in Production
Did it solve our problems?
Questions?

Taught by

Strange Loop Conference

Reviews

Start your review of Building a Distributed Task Scheduler With Akka, Kafka, and Cassandra

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.