接下来,介绍“三高”架构之路。
一、“三高”架构概述
1.1 “三高”:高并发、高性能、高可用
- 高并发:同时并发了很多的请求、很多的事务
- 高性能:查询语句执行的速度快、效率高;数据库的容量大
- 高可用:不管是物理机重启,还是机房断电,要有合适手段,保证业务的数据有备份,可以继续工作
1.2 实现“三高”的手段
比如:目的是升职加薪,手段是学习提升技术水平、工作表现。
1.3 复制
复制,就是将一个库,创建一个跟它一模一样的新库。
两者分别叫主库、从库(备库)。
- 如果数据,只在单点存储一份,倒是节约了硬件资源,但是做不了“三高”啊。想让马儿跑,就得给马儿吃草。所以个人理解,“占用更多硬件资源”不叫“问题”,应该叫成本
1.4 扩展
- 因为单表的数据量上升到了几百万几千万,性能就会严重下降。这就是业务瓶颈。
- 分库分表:将数据由原来的一个库,分割成多个库;由原来的一张表,分割成多个表。
- 因为只要有一个库(库)挂了,整体就会挂,风险加大
1.5 切换
- 正是因为上述的手段:扩展,会增加整体业务挂掉的风险。所以,这里使用才诞生了切换手段
- 切换:本质是主从库身份的切换
1.6 “三高”与手段之间的对应关系
- 复制、扩展:当有100个客户端来查询的时候,就可以将请求分散到多个节点去查询
- 复制:原来1条sql语句,只能在1个数据库上执行;现在分割1条sql语句为2条,分别在2个数据库上同时执行,然后合并。速度不就快了吗。扩展:1个MySQL的实例,只能接收1个一千万行的库。现在将其放到两个MySQL服务器上,将数据库的容量提升翻倍。
- 当一个节点突然挂了,可以马上切换到另一个节点
Comments | NOTHING