一、数据同步
elasticsearch中的酒店数据来自于mysql数据库,因此mysql数据发生改变时,elasticsearch也必须跟着改变,这个就是elasticsearch与mysql之间的数据同步。
思路分析:
常见的数据同步方案有三种:
-
同步调用
-
异步通知
-
监听binlog
1.1、同步调用
方案一:同步调用
基本步骤如下:
-
hotel-demo对外提供接口,用来修改elasticsearch中的数据
-
酒店管理服务在完成数据库操作后,直接调用hotel-demo提供的接口,
1.2、异步通知
方案二:异步通知
流程如下:
-
hotel-admin对mysql数据库数据完成增、删、改后,发送MQ消息
-
hotel-demo监听MQ,接收到消息后完成elasticsearch数据修改
1.3、监听binlog
方案三:监听binlog
流程如下:
-
给mysql开启binlog功能
-
mysql完成增、删、改操作都会记录在binlog中
-
hotel-demo基于canal监听binlog变化,实时更新elasticsearch中的内容
1.4、选择
方式一:同步调用
-
优点:实现简单,粗暴文章来源:https://www.toymoban.com/news/detail-435830.html
-
缺点:业务耦合度高文章来源地址https://www.toymoban.com/news/detail-435830.html
到了这里,关于Elasticsearch --- 数据同步、集群的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!