首页 > 其他分享 >SpringCloud(十)ES 进阶 -- 数据同步

SpringCloud(十)ES 进阶 -- 数据同步

时间:2024-04-23 17:45:21浏览次数:23  
标签:binlog 同步 进阶 -- SpringCloud MQ demo 操作 ES

Demo案例,两个微服务项目,一个操作MySql,一个操作ES

hotel-admin :酒店管理微服务demo,实现对酒店信息的增、删、改(操作MySql)

hotel-demo:ES demo,实现了对索引库、文档的操作,以及高亮显示、搜索自动补全功能(操作ES)

Demo源码下载地址(两个微服务在一起):链接:https://pan.baidu.com/s/1nPTCnLwM2AyH5id8NyyUZg 提取码:wpnh

 

本节实现目标:当酒店数据发生增、删、改时,要求对elasticsearch中的数据也要完成相同操作。

 

数据同步问题分析

同步调用优点:实现简单。 

同步调用缺陷:耦合性太强,影响性能。只要这三步有任意一步出现问题,整个业务就会受到影响。

 

MQ方案优点:为比较推荐的方案,低耦合,实现难度一般。

MQ方案缺点:比较依赖MQ的可靠性。

 

监听binlog方案优点:完全解除了耦合性。

监听binlog方案缺点:需要开启MySQL的binlog。对MySQL压力会很大。还需要引入新的中间件。实现起来很复杂。

 

 

利用MQ实现mysql与elasticsearch数据同步

 

标签:binlog,同步,进阶,--,SpringCloud,MQ,demo,操作,ES
From: https://www.cnblogs.com/JoeYD/p/18153417

相关文章

  • 欢迎 Llama 3:Meta 的新一代开源大语言模型
    介绍Meta公司的Llama3是开放获取的Llama系列的最新版本,现已在HuggingFace平台发布。看到Meta持续致力于开放AI领域的发展令人振奋,我们也非常高兴地全力支持此次发布,并实现了与HuggingFace生态系统的深度集成。Llama3提供两个版本:8B版本适合在消费级GPU上高......
  • 24-自定义持久层框架
    1.JDBC的使用问题代码示例:publicclassJDBCTest{publicstaticvoidmain(String[]args){Connectionconnection=null;PreparedStatementpreparedStatement=null;ResultSetresultSet=null;try{//加载数......
  • SpringBoot整合OpenAPI 3生成在线接口文档
    SpringBoot整合springdoc-openapi,自动生成在线接口文档。1、引入pom依赖<dependency><groupId>org.springdoc</groupId><artifactId>springdoc-openapi-starter-webmvc-ui</artifactId><version>2.3.0</version></dependenc......
  • 使用 MediaCodec 在 Android 上进行硬解码
    要使用MediaCodec在Android上进行硬解码,并获取RGBA数据,你可以按照以下步骤进行操作:创建MediaExtractor对象并设置要解码的MP4文件路径:MediaExtractorextractor=newMediaExtractor();extractor.setDataSource(filePath);根据需要选择音频或视频轨道:inttrackCo......
  • JS逆向
    断点调试的几种办法一、文件流程断点首先以一个登录界面举例说明,抓取登录的数据包.载荷处存在加密的数据 在启动器处可以查看调用堆栈,这个登录请求,大致分析是处在中间位置发生了加密,所以跟一下Login 之后在代码前加入断点,并登录 发现加密数据是在Login处有,匿名处没......
  • winform打包成安装包文件 vs2022
    项目目录里生成的exe文件,放到其他人电脑上用不了,网上找了下打包的文章,写下来以备以后再次使用1.直接右键点击项目的发布,发布的是本地安装模式。如果需要在其他电脑上安装,需要安装一个微软官方的扩展包才可以2.点击菜单栏-扩展-管理扩展 2.安装VisualStudioInstallerProjec......
  • AI agent中的任务分解和调度-学术界文章汇总
    Reflexion:LanguageAgentswithVerbalReinforcementLearning该文章的要点和关键技术,算法流程该文章提出了一种名为"Reflexion"的新型框架,用于通过语言反馈来强化语言智能体的学习。主要包含以下几个关键点:框架组成:Actor模型:基于大语言模型生成文本和动作E......
  • springboot 接口限制访问频率
     1.自定义注解@Target({ElementType.METHOD})@Retention(RetentionPolicy.RUNTIME)public@interfaceRateLimit{//默认最大访问次数intvalue()default3;//默认时间窗口(秒)longduration()default60;} 2.创建拦截器处理频率逻辑@Slf4......
  • [转] JS运算符 &&和|| 及其优先级
    [转]JS运算符&&和||及其优先级:https://blog.csdn.net/banyu0052/article/details/101946098?spm=1001.2101.3001.6661.1&utm_medium=distribute.pc_relevant_t0.none-task-blog-2%7Edefault%7EBlogCommendFromBaidu%7EPaidSort-1-101946098-blog-82424825.235%5Ev43%5Ep......
  • 并发编程(ReentrantReadWriteLock)
    ReentrantReadWriteLock是一个可重入读写锁,内部提供了读锁和写锁的单独实现。其中读锁用于只读操作,可被多个线程共享;写锁用于写操作,只能互斥访问ReentrantReadWriteLock尤其适合读多写少的应用场景读多写少:在一些业务场景中,大部分只是读数据,写数据很少,如果这种场景下依然使用......