Hacker News new | ask | show | jobs
by jayceedenton 1734 days ago
I've seen similar situations where each host was achieving just 16 requests/sec.

Engineers are expensive, and growing more so every year. It's hard to justify time spent to optimise rather than throwing more instances at it. The cloud has made this worse in a way, since provisioning more hosts can be done so easily.

Not many engineers even have the skill to identify and resolve performance problems, so again, people just keep adding more machines. Long term, the problem slowly builds all over the system and the bill becomes mind-boggling.

I do think that we (the software folks) don't help ourselves here. We build frameworks and tools that are still far too hard to inspect. What to watch (and how to optimise) in production, is often never considered deeply when building or documenting the hot new thing.

3 comments

Well, adding machines allows you to postpone fixing the problem.

It's perfectly reasonable, once the bill starts to catch up to your budget you spend time on optimizations :)

EDIT: the only solid argument against throwing machines at the problem is that: scaling something across multiple servers is hard. If you spent energy on performance, maybe you didn't have to.

Not sure why this is downvoted, there are def some issues here. I find the same, there are many things like GraphQL but even SQL libraries or entire frameworks that are not easy to performance-test, or perhaps they are easy to performance test but hard to resolve.

I also agree that most of the devs I have ever worked with, in the UK, have little to no idea about how to actually test performance effectively.

Even though I am personally really interested in performance, even using a cool tool like Resharper profiler takes some time to get your head round.

I get it, but at this scale I think we are talking in the order of a million bucks a year. I don’t know the situation in India, but I imagine that buys a lot of engineers.