<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Caching on Joe Bylund</title><link>http://jbylund.github.io/tags/caching/</link><description>Recent content in Caching on Joe Bylund</description><generator>Hugo -- gohugo.io</generator><language>en</language><copyright>© 2026 Joe Bylund</copyright><lastBuildDate>Tue, 22 Sep 2026 00:00:00 +0000</lastBuildDate><atom:link href="http://jbylund.github.io/tags/caching/index.xml" rel="self" type="application/rss+xml"/><item><title>Stop Using `ORDER BY RANDOM()`: It Scans the Whole Table</title><link>http://jbylund.github.io/posts/00480_random-search-evolution/</link><pubDate>Tue, 22 Sep 2026 00:00:00 +0000</pubDate><guid>http://jbylund.github.io/posts/00480_random-search-evolution/</guid><description>The /random_search endpoint ran two full-table queries on every request. A 10-minute TTL cache materialized the 30k preferred-printing list once; individual requests then did an in-memory sample. Zero DB round-trips on the hot path.</description></item></channel></rss>