背景:我们都知道一个系统最重要的是数据,数据是保存在数据库里。但是很多时候不单止要保存在数据库中,还要同步保存到Es、HBase、Redis等等。传统的mysql触发器,存在一个很严重的问题,就是需要占用mysql资源,以及频繁磁盘IO操作,而且也不适用于自定义的业务流程操作,所以canal应运而生。
我们的业务:业务决定目前的技术架构选型,当前远智业务涉及到众多的缓存服务,比如redis数据同步,以及es数据缓存同步,当前每种业务都是基于业务代码去硬编码进行异步消息监听进行一个业务的消费处理,这种存在这一个很严重的问题,那就是业务代码耦合度超高。
综上所述: 所以我们需要一个监听数据数据行为的架构方案来对我们的业务做一些支撑,这对我们以后做一些边缘业务的聚合同步操作是具有非常重大意义的,模块化分工也是清晰可见的。