PXC集群方案

Percona XtraDB Cluster

  • PXC通过Galera将不同的mysql实例

  • PXC基于Percona Server(性能较Mysql有显著提高)

  • PXC是众多集群方案中的一种

PXC方案优劣势

  • (1)同步复制,事务要么在所有节点提交或不提交。

  • (2)多主复制,可以在任意节点进行写操作。

  • (3)在从服务器上并行应用事件,真正意义上的并行复制。

  • (4)节点自动配置,数据一致性,不再是异步复制。

  • (5)PXC最大的优势:强一致性、无同步延迟

  • (6)PXC硬件配置需要高度一致性,限制PXC集群性能的是性能最差的那一台服务器

1)只支持InnoDB引擎;当前版本(5.6.20)的复制只支持InnoDB引擎,其他存储引擎的更改不复制。然而,DDL(Data Definition Language) 语句在statement级别
被复制,并且,对mysql.*表的更改会基于此被复制。例如CREATE USER...语句会被复制,但是 INSERT INTO mysql.user...语句则不会。
(也可以通过wsrep_replicate_myisam参数开启myisam引擎的复制,但这是一个实验性的参数)。
2)PXC集群一致性控制机制,事有可能被终止,原因如下:集群允许在两个节点上同时执行操作同一行的两个事务,但是只有一个能执行成功,另一个会被终止,集群会给被终止的
客户端返回死锁错误(Error: 1213 SQLSTATE: 40001 (ER_LOCK_DEADLOCK)).
3)写入效率取决于节点中最弱的一台,因为PXC集群采用的是强一致性原则,一个更改操作在所有节点都成功才算执行成功。
4)所有表都要有主键;
5)不支持LOCK TABLE等显式锁操作;
6)锁冲突、死锁问题相对更多;
7)不支持XA;
8)集群吞吐量/性能取决于短板;
9)新加入节点采用SST时代价高;
10)存在写扩大问题;
11)如果并发事务量很大的话,建议采用InfiniBand网络,降低网络延迟;

https://blog.csdn.net/wangyaninglm/article/details/52887045

PXC集群工作原理

PXC和replicate的优劣势

  • 同步复制,写入的速度慢,事务在所有集群节点约么同时提交约么不提交

  • Replication采用异步复制,写入的数据快,无法保证数据的一致性

  • PXC和Replication只是实现了数据同步,没有实现数据的拆分

  • 单表的数量超过的两千万Mysql的性能都会严重的下降

PXC和Replication组合使用方案

  • PXC方案存储高价值数据。如:账户、订单、交易

  • Replication 方案存储低价值数据。如:权限、通知、日志

  • 使用Mycat或JDBC-Sharding切分数据管理集群

PXC集群方案》有2个想法

  1. I think this is among the most important information for me. And i am glad reading your article. But should remark on some general things, The site style is wonderful, the articles is really great : D. Good job, cheers

发表评论