常见的数据同步方案有三种:
同步调用异步通知监听binlog 同步调用
基本步骤如下:
服务1对外提供接口,用来修改elasticsearch中的数据服务2在完成数据库操作后,直接调用服务1提供的接口,
异步通知服务2对mysql数据库数据完成增、删、改后,发送MQ消息服务1监听MQ,接收到消息后完成elasticsearch数据修改
监听binlog给mysql开启binlog功能mysql完成增、删、改操作都会记录在binlog中服务1基于canal监听binlog变化,实时更新elasticsearch中的内容
选择方案方式一:同步调用
优点:实现简单,粗暴缺点:业务耦合度高
方式二:异步通知
优点:低耦合,实现难度一般缺点:依赖mq的可靠性
方式三:监听binlog
优点:完全解除服务间耦合缺点:开启binlog增加数据库负担、实现复杂度高



