feat(search): 集成 Canal 实现数据库变更监听与词典热更新

- 新增 Canal 客户端配置与连接管理
- 实现 Canal 数据订阅与消费调度任务
- 添加外部词典热更新接口与服务实现- 配置 Elasticsearch词典热更新支持
- 引入 Canal 相关依赖并统一版本管理- 启用 Spring 定时任务支持以驱动 Canal 消费- 增加项目词典以优化拼写检查准确性
This commit is contained in:
2025-11-02 19:02:52 +08:00
parent 7c62f1dcf9
commit 96b4127873
10 changed files with 345 additions and 0 deletions

17
pom.xml
View File

@@ -70,6 +70,7 @@
<xxl-job.version>3.2.0</xxl-job.version>
<elasticsearch-java.version>9.2.0</elasticsearch-java.version>
<elasticsearch.version>9.2.0</elasticsearch.version>
<canal.version>1.1.8</canal.version>
</properties>
<dependencyManagement>
<dependencies>
@@ -314,6 +315,22 @@
<artifactId>elasticsearch-rest-client</artifactId>
<version>${elasticsearch.version}</version>
</dependency>
<!-- Canal -->
<dependency>
<groupId>com.alibaba.otter</groupId>
<artifactId>canal.client</artifactId>
<version>${canal.version}</version>
</dependency>
<dependency>
<groupId>com.alibaba.otter</groupId>
<artifactId>canal.common</artifactId>
<version>${canal.version}</version>
</dependency>
<dependency>
<groupId>com.alibaba.otter</groupId>
<artifactId>canal.protocol</artifactId>
<version>${canal.version}</version>
</dependency>
</dependencies>
</dependencyManagement>