运维docs/operate/hardware.md

硬件与容量

Parano1d 不会让链龄成为永久的历史执行负担,但节点仍需要足够的 CPU 验证证明、足够的内存容纳有界网络工作集,以及足够的磁盘保存当前 Live State。 请检查进程实际看到的机器:服务商公布的物理 CPU 型号并不能证明虚拟机 一定暴露所需指令。

发布版运行的最低指令集

发布版二进制支持以下任一架构:

架构 必需指令
x86-64 SSE4.1 和 PCLMULQDQ
ARM64 NEON 和 PMULL

标量实现是测试基准,不是发布版回退路径。不支持的主机会在打开钱包或链 数据库前退出。

在计划使用的主机上运行预检:

sh
parano1d --check-hardware
parano1d-miner --check-hardware

节点检查成功时以以下内容结束:

text
NODE READY

报告也会列出选中的运行时后端。x86-64 会选择 pclmul、 avx2+vpclmul 或 avx512bw+vpclmul,ARM64 会选择 neon+pmull。

虚拟机

有些虚拟机监控器即使运行在较新的物理 CPU 上,也会屏蔽 PCLMULQDQ 或 暴露通用旧 CPU。购买虚拟服务器前:

  1. 确认来宾系统是 64 位;
  2. 如果可用,选择 host-passthrough 或现代虚拟 CPU profile;
  3. 启动实际实例并运行 --check-hardware;
  4. 若进程报告 CPU UNSUPPORTED,不要使用该套餐。

Linux x86-64 可用以下命令查看来宾系统可见的标志:

sh
grep -m1 '^flags' /proc/cpuinfo \
  | tr ' ' '\n' \
  | grep -E '^(sse4_1|pclmulqdq|avx2|vpclmulqdq|avx512)'

发布版预检仍是最终依据,因为它检查节点实际会执行的同一运行时路径。

已测容量

接收节点验证使用四核 CPU、8 GiB 内存、无 swap、PCLMUL。完整 Small 和 Large 负载通过,该场景接收者峰值为 1.65 GiB。服务还需为流量、State 增长、钱包及 快照暂存保留空间。测量分别列出准备、验证、 应用及每个负载条件。

区块生产者使用服务器资源构建证明并搜索 nonce。默认类别为 Small m23; Large m24 需要 --v2-large-blocks。请按预期区块负载配置生产者的内存与 CPU。 种子和验证节点验证收到的证明;四核接收者测试用于验证服务的资源评估。 CPU 代际、可见指令、内存带宽及实际调度 配额都重要,使用 SSD 或 NVMe 并监测剩余空间。

内存行为

主要不可信池均有上限:

  • 内存池最多 1,024 笔交易,序列化交易意图总量最多 384 MiB;
  • 暂存的孤立已接受区块包最多 36 个,编码后总量最多 128 MiB;
  • 每次只解码一个认证快照分段。普通分段上限为 8 MiB,原生分段额外携带有界的类型化公开条款闭包;
  • 快照载荷处理串行执行;
  • 近期完整区块和撤销数据(undo data)窗口大小固定。

总 RSS 还包含证明矩阵、证明者工作区、数据库页、网络及操作系统开销。请预留余量,不要 把服务限制设成空闲时观测到的 RSS。

内置挖矿的证明构建和 nonce 搜索共用同一线程预算。--cpu-threads 应按 实际分配给服务的逻辑 CPU 数设置,而不是物理主机宣传的总数。

磁盘行为

无法为节点整个生命周期给出诚实的固定磁盘数。持久存储包括:

  • 永久的紧凑区块头;
  • 当前物化的精确 Live State 和所有者索引;
  • 最近 42 个规范区块体;
  • 36 个区块的 State 撤销数据;
  • 对等身份与对等节点存储;
  • 证明缓存与快照临时区;
  • 使用钱包时的密钥、元数据和收据。

历史交易体不会无限积累,当前未花费 UTXO 则会随使用增长。磁盘用量取决于 State 占用率和 已占用段的分布。MDBX 会按需以 64 MiB 为单位增长。

监控真实路径:

sh
du -sh ~/.parano1d/data
parano1d-cli state

快照同步在原子安装前,需要临时保存一份完整候选 State。请为已经安装的 Live State、 一份暂存的替换副本以及正常数据库增长保留空间。

网络

允许持久出站 TCP;公共节点还应开放入站 TCP 9600。100 Mbit/s 不限量 连接是合理基线。稳定性以及没有激进的连接或流量限制,比低延迟更重要。

TCP 9601 上的 RPC 是管理接口。除非有私有或认证传输保护,否则只应绑定 回环地址。

容量检查

Live State 规模或流量显著变化后,应重新检查容量:

sh
parano1d-cli status
parano1d-cli state
parano1d-cli peers
du -sh ~/.parano1d/data

请监控磁盘不足、反复掉线、持续同步落后和服务重启。部署方法见 在 Linux 上运行节点,挖矿 CPU 规划见 内置挖矿。

原生分段

Native 使用 m24,在共同证明中验证原生金融操作。getNativeProtocol 给出 相应容量。对于 65,536 槽分段,原生消息上限为 21,889,045 字节,约 20.88 MiB。 其中包含稀疏槽记录、固定头和每槽最多两份 140 字节条款及其长度字段。解码器 在安装 State 前验证长度及槽与条款的完整对应关系。

ParanO(1)d 技术文档共识行为以源代码为准。