Daily Edition · Page 4

THE DAILY INDEX

Technology, AI, software, security, crypto and business

ARTICLES & TUTORIALS

TLDR Web Dev

HOW CANVA COLLECTS 25 BILLION EVENTS PER DAY

Canva's product analytics pipeline collects 25 billion events per day with high uptime, using Protobuf to define event schemas and Datumgen to generate code and enforce compatibility rules. The event collection process starts with analytics clients on various platforms, then events are validated and enriched in ingest-workers before being sent to a Kinesis Data Stream (KDS). KDS serves as the primary streaming platform, with SQS as a fallback for overflow protection and failover mode.

RUBY METHODS ARE COLORLESS

Ruby methods are "colorless," meaning there's no distinction between synchronous and asynchronous methods, allowing for asynchronous behavior without explicit markers. Ruby achieves this through independent call stacks, enabled by Threads and Fibers, which allow for switching between tasks without blocking the main thread. This concurrency model, similar to Go's, allows for efficient handling of blocking operations like file reading, HTTP calls, and database queries.

TLDR IndexPage 4