2 pointsby sonderotis15 hours ago1 comment
  • benoau14 hours ago
    I don't think load balancing is a good example of overengineering, whether "they have 300k+ users, and I have none" you should build your service to be horizontally scalable anyway and probably use a cloud platform that will balance the load between instances automatically. It's almost 20 years since Heroku showed us the way and today most cloud infrastructure implements something like this. There are few scenarios where a dev shouldn't be working like this by default, in my opinion.

    I think overengineering would be more like, worrying about your caching, eeking out the gains from using edge servers and CDNs, message queues pushing workloads off the web servers, database mirrors or clusters, splitting stuff off into microservices, all of this you can tackle as you grow.

    • sonderotis14 hours ago
      I mean you do not need load balancers as much as you think. Yes you should build your architecture to be horizontally scalable but I have seen major apps successed and not need them.

      This is why I flagged them as an overengineering trait