Elasticsearch的數據同步

elasticsearch中的數據多是來自數據庫,當數據庫發生改變時,elasticsearch也必須跟著改變,這個就叫做數據同步。

當我們是進行微服務的時候,同時兩個服務不能進行相互調用的時候。就會需要進行數據同步

方法一:同步調用

當我們進行數據的刪除或者新增的時候,先進行數據庫的修改,這個時候再調用搜索功能的更新接口,然后再由搜索功能的服務進行elasticsearch的數據更新,當更新之后再進行依次回復。

上述方法問題:數據和業務的耦合,兩個業務之間使得功能模塊進行了耦合,同時也會出現效率下降的情況。同時當某一模塊不可用的時候,會引起業務功能之間不能夠使用,使各個模塊之間進行了相互依賴,牽一發而動全身。

方法二:異步通知

當啟動新增或者刪除的業務的時候,數據庫的更新操作還是不變,只不過在這個時候對MQ進行發送消息,進行通知,同時讓搜索模塊的服務監聽著MQ的消息,收到消息之后再把elasticsearch進行數據的更新,最終實現異步通知的方法實現了數據的同步

解除了業務之間的耦合,同時也提高了性能。

方法三:監聽binlog

在MySQL的主從復制的行為時,可以將binlog進行開啟,這樣當MySQL進行數據的更改的時候,使用canal中間件進行監聽,最后通知搜索服務的elasticsearch的數據更新。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/83544.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/83544.shtml
英文地址,請注明出處:http://en.pswp.cn/web/83544.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

uniapp 時鐘

<template><view class"clock-view"><view class"clock-container u-m-b-66"><!-- 表盤背景 --><view class"clock-face"></view><!-- 時針 --><view class"hand hour-hand" :style&quo…

【大模型】實踐之1:macOS一鍵部署本地大模型

Ollama + Open WebUI 自動部署腳本解析說明文檔 先看下效果 一、腳本內容 #!/bin/bash set -eMODEL_NAME="qwen:1.8b" LOG_FILE="ollama_run.log" WEBUI_PORT=3000 WEBUI_CONTAINER_PORT=8080 WEBUI_URL="http://localhost:$WEBUI_PORT" DOC…

相機Camera日志實例分析之三:相機Camx【視頻光斑人像錄制】單幀流程日志詳解

【關注我&#xff0c;后續持續新增專題博文&#xff0c;謝謝&#xff01;&#xff01;&#xff01;】 上一篇我們講了&#xff1a; 這一篇我們開始講&#xff1a; 目錄 一、場景操作步驟 二、日志基礎關鍵字分級如下 三、場景日志如下&#xff1a; 一、場景操作步驟 操作步…

介紹一下 TCP方式程序的通訊,服務器機與客戶機

TCP通信方式&#xff1a;服務器與客戶機通信詳解 TCP(傳輸控制協議)是一種面向連接的、可靠的、基于字節流的傳輸層通信協議。下面我將詳細介紹TCP方式下服務器與客戶機的通信過程。 基本概念 TCP特點&#xff1a; 面向連接&#xff1a;通信前需建立連接可靠傳輸&#xff1a;…

Ubuntu系統復制(U盤-電腦硬盤)

所需環境 電腦自帶硬盤&#xff1a;1塊 (1T) U盤1&#xff1a;Ubuntu系統引導盤&#xff08;用于“U盤2”復制到“電腦自帶硬盤”&#xff09; U盤2&#xff1a;Ubuntu系統盤&#xff08;1T&#xff0c;用于被復制&#xff09; &#xff01;&#xff01;&#xff01;建議“電腦…

【PyTorch】2024保姆級安裝教程-Python-(CPU+GPU詳細完整版)-

一、準備工作 pytorch需要python3.6及以上的python版本 我是利用Anaconda來管理我的python。可自行安裝Anaconda。 Anaconda官網 Free Download | Anaconda 具體Anaconda安裝教程可參考 https://blog.csdn.net/weixin_43412762/article/details/129599741?fromshareblogdet…

Oracle RAC私網網卡冗余

第一步&#xff1a;添加網卡&#xff08;網絡部門實施&#xff09; 第二步&#xff1a;給新網卡配置ip地址&#xff08;如果網絡部門沒有配置&#xff0c;要自己動手配置&#xff09; 第三步&#xff1a;查看心跳網絡配置 –1 su - grid oifcfg getif enp0s3 192.168.1.0 glo…

c#,Powershell,mmsys.cpl,使用Win32 API展示音頻設備屬性對話框

常識&#xff08;基礎&#xff09; 眾所周知&#xff0c;mmsys.cpl使管理音頻設備的控制面板小工具&#xff0c; 其能產生一個對話框&#xff08;屬性表&#xff09;讓我們查看和修改各設備的詳細屬性&#xff1a; 在音量合成器中單擊音頻輸出設備的小圖標也能實現這個效果&a…

織夢dedecms內容頁調用seotitle標題的寫法

首先方法一&#xff0c;直接用織夢的sql實現&#xff1a; <title> {dede:field nametypeid runphpyes} $idme; global $dsql; $sql"select seotitle from dede_arctype where id$id"; $row$dsql->getOne($sql); me$row["seotitle"]; {/dede:fiel…

linux等保思路與例題

例題 最近在做玄機的靶場&#xff0c;對這方面沒怎么接觸過&#xff0c;于是決定做一下順便學習一下 這里可以用change更改命令來查看&#xff1a;change -l xiaoming 也可以用shadow中存儲的信息grep出來&#xff1a;cat /etc/shadow|grep xiaoming 其中&#xff1a; 第一個字…

AirSim中文文檔(2025-6-11)

文檔的git鏈接&#xff1a; https://github.com/yolo-hyl/airsim-zh-docs 目前可訪問的網站&#xff1a; https://airsim.huayezuishuai.site/

???????6板塊公共數據典型應用場景【政務服務|公共安全|公共衛生|環境保護|金融風控|教育科研]

1. 政務服務 1.1 城市規劃與管理 公共數據在城市規劃與管理中可發揮關鍵作用。通過匯聚自然資源、建筑物、人口分布等基礎數據,構建數字孿生城市模型,輔助城市總體規劃編制、決策仿真模擬。在城市基礎設施建設、安全運營、應急管理等方面,公共數據也是不可或缺的基礎支撐。例…

LevelDB介紹和內部機制

介紹 LevelDB 是 Google 開源的高性能鍵值對嵌入式數據庫&#xff0c;具有一系列設計上的優勢&#xff0c;特別適合寫多讀少、對存儲空間要求高效的場景。 核心優勢 1. 高寫入性能&#xff08;順序寫磁盤&#xff09; 基于 LSM-Tree&#xff08;Log Structured Merge Tree&am…

數據庫-數據查詢-Like

引言 &#xff1c;模糊溝通&#xff1e; 父親&#xff08;45歲&#xff0c;對外謙和&#xff0c;對內急躁&#xff0c;東北口音&#xff09; 兒子&#xff08;18歲&#xff0c;邏輯思維強&#xff0c;喜用生活化比喻&#xff09; 母親&#xff08;43歲&#xff0c;家庭矛盾調…

SD-WAN優化云應用與多云架構訪問的關鍵策略

1. SD-WAN如何優化企業對公有云和SaaS應用的訪問&#xff1f; 1.1 智能流量優化 SD-WAN通過應用識別技術&#xff0c;可以根據不同的業務應用流量需求&#xff0c;動態分配網絡資源。例如&#xff0c;SD-WAN能夠優先為釘釘、企業微信、金山文檔等關鍵SaaS應用分配低延遲、高帶…

JVM——對象模型:JVM對象的內部機制和存在方式是怎樣的?

引入 在Java的編程宇宙中&#xff0c;“Everything is object”是最核心的哲學綱領。當我們寫下new Book()這樣簡單的代碼時&#xff0c;JVM正在幕后構建一個復雜而精妙的“數據實體”——對象。這個看似普通的對象&#xff0c;實則是JVM內存管理、類型系統和多態機制的基石。…

專題:2025年跨境B2B采購買家行為分析及采購渠道研究報告|附160+份報告PDF匯總下載

原文鏈接&#xff1a;https://tecdat.cn/?p42612 在商業決策的復雜版圖中&#xff0c;數據是穿透迷霧的精準坐標。本報告匯總解讀聚焦2024年跨境B2B行業核心動態&#xff0c;以詳實數據為錨&#xff0c;串聯商品出口、品牌網站運營、獨立站流量生態三大關鍵領域。我們深入挖掘…

使用spring-ai-alibaba接入大模型

spring-ai-alibaba 是Spring AI生態里與阿里巴巴相關的組件&#xff0c;借助它能夠實現接入各類大模型。以下為你詳細介紹如何使用 spring-ai-alibaba 接入不同大模型&#xff1a; 接入open ai 項目環境準備 首先要創建一個Spring Boot項目&#xff0c;并且在 pom.xml 里添加…

字符串的向量處理技巧:KD樹和TF-IDF向量

使用下面的技術&#xff0c;可以構建不用DL的搜索引擎。 向量搜索引擎使用KD-Tree KD-Tree 搭建以字符串向量為索引的樹&#xff0c;以 O ( l o g n ) O(logn) O(logn) 的時間復雜度快速查找到最近的向量 代碼來源&#xff1a;https://github.com/zhaozh10/ChatCAD/blob/ma…

Modbus TCP 轉Canopen網關連接臺達伺服驅動器的配置案例

本案例是使用歐姆龍PLC通過開疆智能ModbusTCP轉Canopen網關連接臺達A2伺服驅動器的配置案例。 配置過程&#xff1a; 首先打開PLC組態軟件“Sysmac Studio”&#xff0c;新建項目并進行配置。 編寫ModbusTCP的通訊程序。 設置連接的IP地址&#xff0c;端口號等參數。 設置Modb…