Pixietown

👏 more 👏 developers 👏 need 👏 to 👏 hear 👏 this

I can count on one hand the number of my clients over the past couple of years who haven't either over-architected for scale or were unnecessarily concerned about it (prior to coming to me for strategic advice, of course 😉).

You don't need to understand Distributional Little's Law to figure this out, it's obvious with primary school level math.

(screenshot excerpt from https://tailscale.com/blog/new-internet)

@ryantownsend i handle an ecommerce website that serves 500k requests a day, with about a half of them dynamic (i.e. at least a few DB requests). On a single cheap dedicated box.

In fact I'm quite certain almost all of them take 50ms or less because it's one single box. Because I can run a hundred simple database queries instead of one ballooning one. And then put that in a shared, centralized cache. And just invalidate the whole damn cache when any actual meaningful writes happen. Which are minutes apart even during business hours.

Yes, if that server goes down in flames, I'll have to drop everything and migrate, and there will be several hours of downtime. That's gonna suck, I guess, but until then the only downtime we ever had was when (a different, thankfully) data center literally went up in flames and there were some temporary network issues.

Oh, and I guess when debian-security decides to update at 6 am I sometimes get an error report or two while Postgres is restarting.

Turns out if you don't make your shit out of a thousand brittle pieces in the name of "resilience", it just doesn't tend to fall apart on its own. Who knew.