赞
踩
想通后修改博客文章
为什么呢,会出现监听binlog导致MySQL IO 下降,原因就在于
1. 在 Flink 1.x 版本中,CDC 采用的是基于 MySQL 的全局锁机制,这意味着在进行 CDC 任务时会对整个 MySQL 数据库进行全局锁定,这样会导致数据库的并发性能下降,对于高并发的生产环境是不适用的。
2. 而在 Flink 2.x 版本中,CDC 引入了基于 MySQL 的 binlog 拉取机制,避免了全局锁机制的使用。具体来说,Flink 2.x 使用了 MySQL 的 binlog API,通过监听 MySQL 的 binlog 实时获取数据变更,这样就不再需要全局锁定数据库,大大提高了 CDC 任务的并发性能和实时性。
因此Flink 2.x 版本相比于 1.x 版本,在处理 MySQL CDC 时通常会对 MySQL 的 IO 性能有所影响,但影响相对较小。这是因为 Flink 2.x 使用了基于 MySQL binlog 的实时拉取机制,而不是像 1.x 版本那样全局锁定整个数据库。
虽然 Flink 2.x 相比于 1.x 版本会引入一些额外的 MySQL IO 负载,但相对于全局锁机制带来的性能下降,这种影响是可以接受且更为优化的。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。