这个工具是什么
PostgreSQL 内部那套多进程架构——postmaster 分叉后端进程、共享缓冲区、WAL 预写日志、检查点进程、vacuum——光看文字很难建立直觉。PGSimCity 换了个思路:**把整个引擎画成一座可以自由漫游的 3D 城市**。CLIENTS(客户端)、CLIENT POOL(连接池)、BACKENDS(后端进程)、BUFFER POOL(共享缓冲区)、WAL、CHECKPOINTER(检查点)、STORAGE(存储)、STANDBY(备库)、MAINTENANCE(维护)各自是一个色块街区,数据以粒子的形式在其间流动。顶部一排实时指标:TPS、缓存命中率、WAL 吞吐、脏页采样、复制延迟。它有一条 **14 章、约 4 分钟的导览**,带你跟着一条查询走完「从建立连接到提交」的全过程;也可以关掉导览自由探索。最实用的是底部那排**故障场景**开关——STEADY STATE(稳态)、CHECKPOINT STORM(检查点风暴)、CACHE THRASH(缓存抖动)、BLOAT AND VACUUM(膨胀与清理)、THE XMIN HORIZON、LOCK PILE-UP(锁堆积)——点一下就能看到对应状况在城市里如何蔓延。作者是 Postgres 社区的 Nikolay Samokhvalov,项目 Apache-2.0 开源,网页打开即用,无需安装。
风险提醒
- 作者在页面上明确声明:这是早期、未经评审的原型,「几乎必然在模型和讲解两方面都存在不准确之处」。请把它当作建立直觉的教具,不要当成 PostgreSQL 行为的权威依据;涉及生产环境的判断,请以官方文档和实测为准。