Skip to content

ContainerCacheGuard v0.1.0-rc.9:通用容器文件缓存治理候选版

Pre-release
Pre-release

Choose a tag to compare

@cuipengdba cuipengdba released this 06 Nov 11:57

ContainerCacheGuard 已从 PostgreSQL 专用备份原型转为独立的容器文件缓存治理常驻程序。当前产品树、说明和二进制均属于新项目,旧 Git 历史保留。

这是 v0.1.0-rc.9 候选版,尚未通过全部业务与真实集群验收。

功能与交付

  • auto 自动发现范围、paths 指定路径;observe/enforce 单独配置。
  • 普通磁盘文件缓存的有界发现、驻留观察、分段释放建议、复查和退让;其它内存类型只监测解释。
  • 45项严格配置、JSON状态、暂停/恢复、只读共享卷部署说明。
  • Linux x86_64/amd64 与 ARM64 静态程序,无需PG客户端、Python、vmtouch或nocache运行依赖。
  • 中文说明、全部参数、容器/DBS/Kubernetes/OpenShift部署、设计、排障、测试及长期方案。
  • 约5分钟和10分钟普通话讲解视频,内嵌中文字幕,另附SRT和逐字稿。

实测结果与限制

约198GiB、1428业务模式、10217物理表/分块、642157127行的已迁移PG18.6副本;containerd、Linux5.14、cgroup v2。全量备份限速96MiB/s。

指标 无治理 最终实验配置
源cgroup file峰值GiB(含shmem) 11.924 2.070
输出file峰值GiB 5.958 3.193
备份耗时秒 2671.72 2656.11
原生完整性校验 通过 通过

最终备份另建恢复副本并实际启动,模式目录、关系目录和探针结果比对通过,正常关闭。

普通文件峰值增量源端下降84.87%,输出下降46.42%,输出未达此前≥70%目标。控制器源/输出平均占单核10.38%/19.47%,RSS采样峰40.4/41.4MiB,使用的是公开记录的高吞吐实验配置。

以下问题未解决,不能据此宣称不再驱逐:

  • 不限速校验仍使输出file升至约5.76GiB,未建立全过程缓存硬上限。
  • 高强度重复读回收使读盘约翻倍,热点p99由约0.038ms升至2.823/4.686ms。明确排除热点后约0.048ms,有改善但仍未证明≤5%相对延迟目标。
  • 未完成真实Kubernetes/OpenShift驱逐、72小时长稳、ARM64 64KiB页内核和完整DBS自动任务接入验收。
  • 当前只复用hisdbs真实副本并模拟访问,没有独立迁移另一份DBS库;不是1.5TB验证。

建议先observe,优先明确低复用产物,指定热点排除;不将高吞吐实验配置直接用于全PGDATA自动执行。完整报告保留未达标与失败试验。

下载与校验

选对应架构tar.gz可同时取得程序、许可证、中文文档和配置例子;也可下载单独二进制。根据SHA256SUMS核对下载文件,赋予执行权限后先运行help、init-config和doctor。

BUILD-PROVENANCE.json记录源代码提交、工具链、构建方式和二进制SHA。核心代码f021485;原生双架构CI已核对unit/race/CLI原日志,早期CI错误亦在报告中保留。