Hacker News new | ask | show | jobs
by steev 2361 days ago
This sounds like an architecture problem, not a language problem. Can you elaborate?
2 comments

Of course it's possible to write a horizontally scaled application in Java or C++. But once you have to deal with horizontal scaling anyway, language performance is much less of an advantage: as Carmack says, the difference between 100 servers and 10 is just accounting.
And the difference between 1000 servers and 100 is not just accounting. In essence, 1 full rack is easy to reason about while N>1 is not, for myriads of non accounting reasons.
The Internet uses on the order of 10% of the world's electricity. A 10x difference is huge.
Out of curiosity - what's the source on that? Most figures I've seen put datacenter usage an order of magnitude lower:

e.g. https://www.iea.org/reports/tracking-buildings/data-centres-...

"Global data centre electricity demand in 2018 was an estimated 198 TWh, or almost 1% of global final demand for electricity (Masanet et al., 2018)."

This random site from I found by googling: https://www.insidescandinavianbusiness.com/article.php?id=35... I was surprised by that number myself, because I also thought that it was in the single digits.
It should be noted that report is talking about the client devices too - desktop, laptops, and even TVs. The datacenters part only accounted for 15% of that.
Sometimes in a specialized team, the difference between 100 servers and 10 is profitability. Don't want to get laid off because that cloud bill is $100k a month.
Spoken like an individual contributor far enough down the ladder to not have to worry about the bill.
In my experience it's the individual contributors who are overly obsessed with being elegant and efficient in their use of machine time. Those who are conscious of the bigger picture tend to have a more accurate sense of the relative costs of machine time versus engineering effort.
Multiplying your datacenter bill by 10 because you couldn't be arsed to spend two days thinking about system architecture isn't an "accurate sense of the costs" in any universe, except the one where you're spending venture capital bucks and waiting to get quckly bought by a Google with more free money than they can count.
Sounds like they had their datastore as part of the application. So only way to scale it would be to write a distributed data store... Or rewrite the app :p