前言
随着mysql存储的数据量越来越大,mysql查询单表时的响应速度也会随之变慢,尤其是当单节点承载的数据量超出一定的范围后,比如单表超过2000万之后,查询响应速度会下降的很快,因此,一方面可以考虑mysql集群,另一方面可以考虑读写分离,这两种方案的出发点不同,集群更多是从单节点可容纳的并发连接数考虑,比如单节点的mysql服务器支持的最大连接数是有限的;而读写分离可以提升mysql服务总体的读写性能,避免读请求和写请求都打到同一个节点上,分摊压力
总结来说,可以归纳为单节点的mysql服务始终是有瓶颈的,因此需要考虑集群化的解决方案,业界比较成熟的方案包括PXC集群和replication集群
pxc集群
PXC介绍
Percona XtraDB Cluster(简称PXC集群)提供了MySQL高可用的一种实现方法
- 集群是有节点组成的,推荐配置至少3个节点,但是也可以运行在2个节点上,生产环境建议不要超过15个,否则整体性能下降的很快
- 每个节点都是普通的mysql/percona服务器,可以将现有的数据库服务器组成集群,反之,也可以将集群拆分成单独的服务器
- 每个节点都包含完