WuKongIM Docs

工具

为观察、离线存储检查、负载验证和有界诊断选择正确的仓库工具。

编辑此页报告文档问题

WuKongIM 的工具按目标和风险分开:wkcli 面向在线集群 API,wkdb 面向单节点离线数据,wkbench 面向隔离的真实流量测试,诊断能力用于回答一个有界问题。工具输出是证据,不是绕过 Manager 审批或集群安全门槛的权限。

先确认目标边界

每个部署都是集群,包括单节点集群;物理哈希槽固定为 256。节点本地快照、数据库文件或 Top 结果不能自动代表整个集群。

选择工具

目标使用读取或写入不适合
查看在线节点、Top、动态节点状态wkcli多数检查只读;节点生命周期子命令会调用受控 Manager 写 API直接编辑 Controller/Slot 状态或管理进程
查询、导出或比较节点本地存储wkdb离线只读为主;只有 import 写目标存储在线集群查询、全局快照或自动迁移
验证协议流量、容量假设和回归门槛wkbench产生真实连接、频道、用户和消息无界生产压测或通用容量数字
关联日志、指标、Top、诊断事件与 pprof诊断能力默认只读;pprof 是有界的主动观察自动修复、任意命令或任意查询

通用工作流

  1. 确认身份:记录仓库版本、二进制摘要、集群 ID、节点 ID 和目标地址。
  2. 选择最小能力:从只读、低成本、短时间的命令开始;不要一开始就抓 profile 或产生负载。
  3. 隔离权限:使用最小权限凭据和受控网络;Manager、Benchmark、Debug 与 Operations MCP 使用各自的信任边界。
  4. 设置预算:限制目标、并发、持续时间、返回行数和制品目录,并写明停止条件。
  5. 保存上下文:保留命令、时间范围、退出码和脱敏输出;不要只复制最终摘要。
  6. 清理临时能力:关闭 Debug、Benchmark、临时凭据、模拟器和额外采样,确认资源回到基线。

从源码构建

在已审核的仓库版本中构建需要的二进制:

go build -o ./bin/wkcli ./cmd/wkcli
go build -o ./bin/wkdb ./cmd/wkdb
go build -o ./bin/wkbench ./cmd/wkbench

工具与目标服务端应来自已记录、可追溯的版本。不要把开发分支工具直接用于生产,也不要假设未知版本之间的离线格式、Manager API 或 Benchmark 协议兼容。

失败处理

  • 认证、连接、状态新鲜度或目标身份无法确认时停止,不要更换到更高权限凭据继续尝试。
  • 只读输出冲突时保存双方证据,再检查时间、节点、版本和数据来源。
  • 写命令失败后先读取权威任务状态;不要在不知道前一次是否生效时重复提交。
  • 负载、profile 或扫描达到预算时立即停止,即使尚未得到预期结论。

按现象选择第一项检查,见故障排查

本页内容