45 minutes ago · Tech · hide

Good systems design can be a major determinant of business success. Hendrith Vanlon Smith Jr, CEO of Mayflower-Plymouth I just read an article from an author I follow on Medium that summarizes system design perfectly: Slow reads? Add a cache. Write spikes? Buffer with a queue. Too much traffic? Add a load balancer. Read-heavy database? Add read replicas. Write-heavy database? Shard the data. Slow queries? Add indexes. Slow file loads? Object storage + CDN. Temporary failures? Retry with backoff. Too many requests? Rate limiting. One service failing? Circuit breaker. Duplicate requests? Idempotency keys.1 Can't see what broke? Logs, metrics, tracing.2 This advice is invaluable for CRUD software (like Record Rack) to survive on the web3. We learned this tip the hard way at Record Rack 😢. ↩ This cannot be understated. ↩ This entire blog post is just acting as a bookmark later for me. You're welcome, my future self 😏. ↩

Commenting on Bubbles has been removed. Why? If you want to talk about this post, write to the author, use the comments on their blog if it has them, or reply with a "RE:" post on your own blog. Suggestions? feedback@bubbles.town