Otter源代码解析(三)

全部文档索引:

Otter源代码解析(一): http://eyuxu.iteye.com/blog/1941894

Otter源代码解析(二) : http://eyuxu.iteye.com/blog/1942518

Otter源代码解析(三): http://eyuxu.iteye.com/blog/1942519

Otter源代码解析(四): http://eyuxu.iteye.com/blog/1942521

Otter源代码解析(五): http://eyuxu.iteye.com/blog/1942522

Otter源代码解析(六): http://eyuxu.iteye.com/blog/1942549

Otter源代码解析(七): http://eyuxu.iteye.com/blog/1942578

Otter源代码解析(八): http://eyuxu.iteye.com/blog/1942780

Otter源代码解析(九): http://eyuxu.iteye.com/blog/1942786

关于Node

Node后面着重讲解几个部分:

1. Node-canal:即Node和Canal是怎样结合的;

2. Node-SETL:比较关键的Select、Extract、Transform、Load几个部分(每个部分分别作分析)

先讲解比较简单的canal结合的部分,比较简单,HA尚未做仔细分析,不过逻辑不复杂,读者自行阅读代码也不存在多大的障碍:



 关于这个模块需要关注1)Canal的接入是Embed方式的(Canal本身是支持Embed和独立运行两种模式的);2)Canal的节点的信息实际上是在Manager节点上面维护的(这个比较好理解,因为配置人员不会到每个节点上去配置这些信息,这样管理起来太复杂了)。

CanalSelector作为Select过程的唯一个数据提供源(个人觉得Otter在扩展性方面设计的比较一般,不过仅是个人见解,可能作者在做架构的时候扩展性并没有作为一个比较重要的目标)

猜你喜欢

转载自eyuxu.iteye.com/blog/1942519