Тёмный

"Building a Distributed Task Scheduler With Akka, Kafka, and Cassandra" by David van Geest 

Strange Loop Conference
Подписаться 82 тыс.
Просмотров 32 тыс.
50% 1

Dynamically scheduled tasks are at the heart of PagerDuty's microservices. They deliver incident alerts, on-call notifications, and manage myriad administrative chores. Historically, these tasks were scheduled and run using an in-house library built on Cassandra, but that solution had begun to show its age.
Early in 2016, the Core team at PagerDuty built a new Task Scheduler using Akka, Kafka, and Cassandra. After six weeks in development, the Scheduler is now running in production. This talk discusses how the strengths of the three technologies were leveraged to solve the challenges of resilient, distributed task scheduling.
This talk will present a number of distributed system concepts in the real-world context of the Scheduler project. How can you dynamically adjust for increased task load with zero downtime? Can you guarantee task ordering across many servers? Do your tasks still run when an entire datacenter goes down? What happens if your tasks are scheduled twice? Attendees can expect to see how all of these challenges were addressed.
Some familiarity with distributed queueing and actor systems will be helpful for attendees of this talk.

Наука

Опубликовано:

 

24 июл 2024

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 7   
@LovyGupta007
@LovyGupta007 4 года назад
Well explained but one thing seems to be missing here is how scheduling is implemented. It'd be nice to have that explained as well.
@cynthia7000
@cynthia7000 3 года назад
Exactly. i'd love to learn, what if a new task comes, which is between the time of 2 already scheduled tasks, how to handle the insertion/ordering in Kafka.
@gtasa6000
@gtasa6000 Год назад
I'm curious about when are tasks put in Kafka to be executed. Are tasks that were scheduled to run now (or in past) the only ones pushed to kafka. If so, how can you reduce the frequency of cassandra queries. On the other hand, if tasks that are scheduled to be executed in near future are also pushed to kafka then how does insertion of new tasks in between two already scheduled work, since Kafka will order the messages?
@enjoyalife1
@enjoyalife1 3 года назад
Very good talk. Well-prepared and well-presented.
@suhasnayak4704
@suhasnayak4704 4 года назад
Few questions regarding The Old Solution: 1) What was the reason for choosing Cassandra as the database ? 2) Why was WorkQueue slow ? Because of too many I/O operations ? Few questions regarding The New Solution: 1)You said we cannot scale once we have one partition per broker and increasing the partitions is costly. So what is the alternative ? What if i want to scale further ? 2)When you say logical queues will be stuck, you mean to say logical queues in the stuck logical queue instance will be stuck right ? and not all the logical queues across the service instances right ?
@santhoshkumarp4920
@santhoshkumarp4920 7 лет назад
I need to implement same in java. Is there any place I can get the architecture documents of this ?
@lyfzwrthlvngful
@lyfzwrthlvngful 2 года назад
I worked on a similar project a while back. We built a system off quartz, how did you proceed? just curious :)
Далее
Kafka: A Modern Distributed System
52:25
Просмотров 39 тыс.
Crossing the Most Dangerous Crosswalk
00:24
Просмотров 10 млн
"Programming Distributed Systems" by Mae Milano
41:03
Design Microservice Architectures the Right Way
48:30
Просмотров 709 тыс.
#engineering #diy #amazing #electronic #fyp
0:59
Просмотров 1,9 млн
ОШИБКИ НА ANDROID 2
5:13
Просмотров 28 тыс.
#engineering #diy #amazing #electronic #fyp
0:59
Просмотров 1,9 млн