该文被密码保护。 阅读全文
posted @ 2026-08-02 22:16 景之1231 阅读(4) 评论(0) 推荐(0)
摘要: 1. 整体流程与逻辑说明 1.1 调用链全景图 flowchart TD CTRL["Controller<br/>(触发 API 请求)"] --> SVC["TableHashCompareServiceImpl<br/>.submitCompare(dto)"] SVC -->|"异步提交到 阅读全文
posted @ 2026-07-19 15:57 景之1231 阅读(8) 评论(0) 推荐(0)
摘要: Overview Overview页签下分别包含了:Actions,Reports,Step By Step 三大块功能;每一块功能下的子集所对应的作用分别是: Actions: Histogram(直方图) 列出每个类 所对应的对象个数,以及所占用的内存大小; Dominator Tree(支配树 阅读全文
posted @ 2026-07-01 22:45 景之1231 阅读(11) 评论(0) 推荐(0)
摘要: 0.注意事项 DLQ消息重投的时候(必须确保headers的重投次数是最新的)以后,等待重投完成,前端必须重新刷新界面(防止重试次数被覆盖)(后端的校验怎么做?) 后端没办法做校验,不知道前端勾选的哪些数据,如果勾选的数据的时间差异很大,如果数据集比较大的时候,后端再查一次,会很慢; 或者可以重投的 阅读全文
posted @ 2026-06-28 21:26 景之1231 阅读(8) 评论(0) 推荐(0)
摘要: 1. 背景与需求 1.1 业务场景 阶段 场景 说明 当前 DLQ 预览 + 选择性重投 从不同业务的死信 Topic 拉取消息,人工预览后,将选中消息重投到原业务 Topic 后续 定时任务批量重投 按已提交 offset 增量拉取,自动重投 后续 多业务多 Topic Topic 名从数据库读取 阅读全文
posted @ 2026-06-10 21:00 景之1231 阅读(7) 评论(0) 推荐(0)
摘要: 适用场景:接收 HikariDataSource(或 javax.sql.DataSource),硬编码拼接 SQL 做增删改查。 目标:消除重复的 try-catch / 资源关闭样板,不引入动态数据源、不抽象 SQL 构建。 源码位置: 类 路径 JdbcExecutionUtil src/ma 阅读全文
posted @ 2026-06-03 07:37 景之1231 阅读(10) 评论(0) 推荐(0)
摘要: 1. 改造背景(简述) 问题 结论 openGauss JDBC 无法可靠流式 OG 必须 批量 fetchHashRows PG 仍支持服务端游标 PG 保留 HashRowCursor 流式 双端流式 + 明细 log 废弃;改为返回 CompareResult 超 100 万行 OOM 风险 阅读全文
posted @ 2026-05-27 20:24 景之1231 阅读(10) 评论(0) 推荐(0)
摘要: 1. 背景与问题 原实现中 HashRowCursor 已使用 setFetchSize(compareFetchSize),并在应用层通过 Iterator + StreamingHashComparer.merge() 做双指针归并,业务上不会把全表 hash 装入 List。 但在 Postg 阅读全文
posted @ 2026-05-26 19:44 景之1231 阅读(9) 评论(0) 推荐(0)
摘要: PG ↔ openGauss 两表 Hash 比较 1. 功能概述 在指定时间范围内,对比 PostgreSQL(源库,小写表名/列名)与 openGauss(目标库,大写表名/列名)同一张表的数据一致性: 通过 MD5 行 hash 流式扫描,避免全量加载 输出三类差异:PG 独有、OG 独有、h 阅读全文
posted @ 2026-05-24 20:11 景之1231 阅读(13) 评论(0) 推荐(0)
摘要: 缓存一致性方案设计 背景 项目引入 Redis 替代 MyBatis 二级缓存,为 param_config 表及未来实体提供统一的缓存层。核心诉求是保证 DB 与 Redis 之间的数据一致性。 场景假设 读写模式: 读多写少 一致性要求: 允许短暂不一致(最终一致性即可) 核心查询维度: 按主键 阅读全文
posted @ 2026-05-19 23:11 景之1231 阅读(19) 评论(0) 推荐(0)