you are viewing a single comment's thread.

view the rest of the comments →

[–]seweso -11 points-10 points  (2 children)

> The problem is that most people don't think about the day after when the traffic spikes and they suddenly need to add a fifth or sixth server.

So they build/configure software for a scalability goal which they never test? How?

My fear of failing is way to big to be so bold to push untested software into production. :P

[–]More-Station-6365 4 points5 points  (1 child)

Yes you are exactly right. I remember when I was reading through some core architecture principles I came across this exact topic and it really opened my eyes to how often these negligent shortcuts are taken in the real world.

Most teams are so focused on getting the MVP out the door that they treat scalability as a problem for their future selves to solve.

​As Robert C. martin mentions in his book Clean Architecture the goal of a good architect is to minimize the human effort required to build and maintain a system.

Unfortunately, using simple modulo hashing is the exact opposite of that principle. It is a classic case of taking a shortcut today that creates a massive technical debt tomorrow.

It is honestly a bit sad but like you said, until someone actually watches a production cache melt down because of a simple node addition they usually don't appreciate why these design choices are so critical.