你的观点是对的,这的确是个关于平衡和取舍的点。在做架构设计时,可以充分考虑业务现在的发展情况,对短中长期的需求有一个预判。
问题中你提到了架构的高可用,以高可用为例,业务眼下需要达到什么样的水平呢?能匹配业务的发展诉求,略有超前,给日后的发展留下口子就行,不要直接把路给堵死了。例如,对于一个刚起步的业务,可能同一AZ中能够做到无状态的集群化部署就行了;随着业务发展,后面再考虑同Region的多AZ容灾,可以先从冷备做起,再到热备,最后多活;如果业务发展更大了,再来考虑异地容灾的问题。前几步有比较成熟的解决方案,小成本的方式就能实现,对业务来说也是可以接受的。