数据库方面:
将一个网站的不同业务分到不同的表,按功能对表进行细化。
如果是多个网站,多个端口(如PC端,APP端)链接到同一个数据库,对多种方式访问的共同数据专门提出来,成为公共资源,专门放到同一张表里面。
SLB负载均衡:
比如一个网站有1000万的访问量,通过loadbalance把这1000万的访问进行负载均衡掉。loadbalance的学习自己进行。阿里云貌似有。负载均衡把这1000万的访问量负载均衡到7,8台机器上,可扩展性也很好,当相应速度上不去的时候 ,可以继续扩展机器来满足访问量需求。
一台机器挂了,系统检测到这台机器挂了,就走另外的机器,继续负载均衡,从而保证系统的容灾性。
数据采用分布式存储,可以按月份把数据分开,一月一月一存储,这样就可以避免一个表中大数据量的产生。查找数据的时候,按月份进行匹配,对应相对的表查找数据。
当然也可以采用其他的分库分表规则,订单表可以按照月份来分,用户表可以根据id尾号来分。也可以根据其他的规则,自己定。自己定的规则则要考虑好其中的可扩展性是否良好,以后的业务是否可扩展,等等。
分库分表以后就要确定DB路由,DB路由就是对其中各种匹配