既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上Go语言开发知识点,真正体系化!
由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新
目前了解组件有 maxwell、canal、debezium、flinkx (如果还要别的欢迎留言补充)
组件 | Canal | Maxwell | Debezium | Flinx |
---|---|---|---|---|
开源方 | 阿里 | zendesk | redhat | 袋鼠云 |
开发语言 | Java | Java | Java | Java |
支持数据库 | MySQL | MySQL | MongoDB、MySQL、PostgreSQL、SQL Server 、Oracle( 孵化)、DB2( 孵化)、Cassandra( 孵化) | MongoDB、MySQL、PostgreSQL |
是否支持bootstrap | 否 | 是 | 是 | 否 |
是否支持解析DDL同步 | 是 | 是 | 是 | 是 |
是否支持HA | 是 | 需定制 | 基于kafka-connector | 是 |
社区活跃(2020.07.20) | release:2019.09.02,star:14.8k,last-commit:2020.03.13 | release:2020.07.01,star:2.2k,last-commit:2020.07.02 | release:2020.07.16,star:3.4k,last-commit:2020.07.16 | release:2020.07.14,star:1.4k,last-commit:2020.07.17 |
文档 | 中文,百度可以解决 | 英文,官方文档 | 英文,官方文档十分详细 | 中文,github readme 文档 |
MQ集成 | RocketMQ、Kafka | kafka | kafka | Emqx、kafka |
分析
选型考虑的点
- 必须带bootstrap功能
- 可与kafka的集成,集成越简单越好
- 数据源必须支持 MySQL、MongoD、PostgreSQL(项目刚需)
- 项目活跃程度
从支持的数据源来看Canal、Maxwell 数据源支持不足,Debezium和Flinkx都是不错的选择; 但FlinkX 支不支持bootstrap,只能选择 Debezium。
一些有意思的事情:
- 在调研时 google 出来的资料,基于kafka connector 的 Debezium 会比基于Flink 的FlinkX 更多;
- Debezium是基于kafka connector 集成开发的与kafka 高度耦合
- FlinkX的mysql binlog 同步基于canal的客户端开发的
- kafka 1.0 以后 connector的发展很快,confluent 有很多开源的connector。
参考资料
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!**