Rate Limiting at the CDN Edge
Implementing rate limiting at the CDN edge for public-facing services, covering algorithms and practical trade-offs.
Implementing rate limiting at the CDN edge for public-facing services, covering algorithms and practical trade-offs.
A guide to Python's asyncio module covering async/await, event loops, tasks, and when to use asyncio vs threading or multiprocessing.
A practical guide to HTTP caching covering Cache-Control, Surrogate-Control, and caching strategies at client and proxy layers.
A quick reference for calculating Big O time complexity by identifying dominant operations in an algorithm.
An introduction to Big O notation and algorithmic time complexity with Python examples for common operations.
A beginner-friendly introduction to statistics covering data types, frequency, averages, distributions, and graph visualisation.
Practical guidelines for building performant and reliable NSQ queue reader services in Python.
Best practices for application monitoring covering metrics, alerting strategies, data aggregation, and graph selection.
A concise set of guidelines for running effective load tests, covering real datasets, traffic distribution, and tooling.
A deep dive into how Fastly's CDN works, covering Varnish internals, clustering, shielding, and edge programming gotchas.
Techniques and tools for profiling Python applications including timers, cProfile, line_profiler, memory_profiler, and pyflame.
Techniques and tools for profiling Go applications including pprof, benchmarks, and memory management analysis.
A gentle introduction to Big O notation covering logarithms, factorials, and how to reason about algorithm growth rates.
A quick introduction to HTTP/2 covering persistent connections, multiplexing, header compression, and server push.
Lessons from building high-traffic systems at BBC News on complexity, caching, automation, and keeping software simple.