Work queue vs log

A work queue gives each message to one worker and then deletes it. A log keeps every event, so a new consumer can read it again from the start. After a code change, replaying 100,000 saved events takes 30 s with work queues and meets the 10 s limit with a log.

Play the level

Delivered twice, charged onceTap to turn the ID check on or off

13 deliveries · 10 payments applied · 0 charged twice

Case 1

Analytics must replay 100,000 saved events within 10 s. 100 image jobs of 1 s each must finish within 20 s, and no job may be lost.

Case 1
Measure Goal Work queues for events and jobs Log for events, queue for jobs
Replay time under 10 s 30 s Fail 5 s Pass
Completion time (Jobs) under 20 s 5 s Pass 5 s Pass
Lost writes none 0 Pass 0 Pass
Monthly cost 44 USD/mo 40 USD/mo
Error rate 0% 0%
Level rules none broken Board is not complete Fail Pass
KafkaAMQPHTTP/2AMQPHTTP/2UsersUsersKafka log4 vCPU · 4 GBWorker4 vCPU · 4 GBWorker1 vCPU · 1 GBMessage bro…1 vCPU · 1 GBMessage bro…1 vCPU · 1 GB
KafkaAMQPHTTP/2AMQPUsersUsersKafka logWorkerWorkerMessage bro…Message bro…
Work queues for events and jobs: misses a goal
KafkaTCPAMQPHTTP/2UsersUsersKafka log4 vCPU · 4 GBWorker4 vCPU · 4 GBWorker1 vCPU · 1 GBMessage bro…1 vCPU · 1 GB
KafkaTCPAMQPHTTP/2UsersUsersKafka logWorkerWorkerMessage bro…
Log for events, queue for jobs: meets the goals