
大型互联网平台有两个基本条件:
1.巨大的用户量(如:1亿以上)
2.并发访问量大(如:每天十亿级别的访问量)
巨大的用户量,以及用户的操作行为,会让数据库里的记录数量巨大,这会导致在做数据库查询的时候会比较慢;高并发访问,会导致单个数据库的连接数超出限制,导致数据库崩溃。
解决思路:
1.化整为零,逐个击破
把10亿用户拆分成100个1000万,先处理好1000万用户的问题,然后横向扩展100份就行了。这里只是举例,要根据实际应用的场景、数据量和使用的硬件等因素进行合理的拆分,而且实际情况中可能也不是平均来分。当然,这里还有很多技术细节需要考量,我们会在单独的博客里面进行详细的解读。
2.抽丝剥茧,直达核心
技术架构图中可以看到整个系统中的各个组件,其中数据库是最大的瓶颈,因此解决好数据库的访问压力问题,就可以很容易解决好其它组件面临的问题。