Keeping Throughput High on Green Saturday
summary
Describes concrete fixes: add microcaching via NGINX/OpenResty (global cache shared with memcache), round device coordinates at the gateway to boost cache keys, implement a write‑behind cache for region lookups, collapse parent/child ES docs into one index and use painless scripts, and memoize expensive Ruby mappings. Results: ~100,000 req/min peak, Discovery API = 53% traffic, location = 20%, cache hit ≈ 9%, ES query tail drops from ~45ms to ~30ms (≈33% faster), avg latency ~80ms at peak, and 100% uptime.
AI-written summary · about
chapters (45)
- 0:00Introduction
- 1:14Discovery API
- 1:51Core Application
- 2:38Discovery APIs
- 3:06Green Saturday
- 3:18What is Green Saturday
- 4:31Weedmaps
- 4:46History
- 5:09Split Postgres
- 5:25V2 API
- 5:46Containerization
- 7:24Weed Maps Homepage
- 7:34Location
- 8:27Micro Caching
- 8:56Proxy Cache
- 9:43Proxy Settings
- 10:42OpenRusty
- 11:24MicroCaching
- 11:57Chart
- 12:28Afterparty location
- 13:44Drystruct
- 14:07Rounding
- 14:39Engine X
- 15:40Graph Cache
- 16:06Route Controller
- 16:47Regions
- 17:06Time to Live
- 17:52Readthrough Cache
- 18:19Expired Cache
- 18:46Set Cache
- 19:39Refresh
- 20:22Burst
- 21:05Elastic Search
- 22:56Results
- 23:26Brand Categories
- 24:27Big Brown Spike
- 25:27Data Structures
- 25:58Big spike in Ruby
- 27:12Peak traffic
- 28:07Uptime
- 28:30Cache
- 28:56Sensor Data
- 29:31Response Time
- 31:13Benchmark
- 32:23Tweed Maps
related talks
34mCache = Cash! 2.0
27mCache=Cash!
43mAPI Optimization Tale: Monitor, Fix and Deploy (on Friday)
25mCaching strategies on https://dev.to
18mScaling APIs to Billions: Extreme-Scale Reliability
27mImproving the Usability of Remote Caching
24mFrom Expensive Queries to Smart Caching: A DBA’s Guide for Rails
28mEdge Caching Dynamic Rails Apps
