交易池管理 (TxPool)

知识网络定位

当前页面已进入跨页知识网络层:不仅展示本页拓扑,还明确它在整站里的分类、被哪些页面引用、又继续指向哪些专题与证据页。

打开知识网络总览
状态:已实现 分组:运行与状态 出链:4 回链:5 相邻推荐:8
接口查询P2P组网NAT状态存储证据

TxPool 交叉校验

可证:重复交易、无签名交易、limit 取数均有测试原文 边界:queued 队列与真实 GasPrice 排序尚未宣称完成
拓扑追踪模式:支持悬停预览、点击锁定、节点搜索、只看上游、只看下游,以及“仅一跳 / 全链路”切换,帮助查看者在复杂拓扑中快速定位流程关系。
搜索 支持热词与别名检索:金库 / 治理 / 证明 / 复核 / 总控 / 注册中心 / 铸造 / 处罚
热词
方向
深度
未锁定 | 双向 | 全链路 | 悬停预览,点击锁定
当前节点 上游链路 下游链路 双向汇聚 非当前路径

flowchart TD
    subgraph Entry["入口与接收面"]
        RPC["rpc.html
RPC / REST / P2P 广播进来的原始交易"] --> Receive["接收原始交易"] Wallet["wallet.html
本地钱包签名交易"] --> Local["本地钱包 / 合约执行器提交"] Local --> Receive end subgraph Validate["准入校验面"] Receive --> Capacity{"池容量是否超限"} Capacity -->|"超限"| RejectFull["拒绝: pool is full"] Capacity -->|"未满"| Hash{"Tx Hash 是否为空/重复"} Hash -->|"异常"| RejectDup["拒绝: 空哈希 / 重复交易"] Hash -->|"通过"| Check["完整校验
basic + Dilithium 签名 + size + gas + nonce + balance"] Check -->|"失败"| RejectInvalid["拒绝: 非法签名 / 低 Gas / Nonce 回退 / 余额不足"] Check -->|"通过"| Pending["写入 pending 池
当前实现默认不拆 queued"] end subgraph Scheduling["调度与打包面"] Pending --> Select["GetPendingTransactions(limit)"] Select --> Sort["当前实现: 时间戳优先排序
Gas Price 真排序已留 TODO"] Sort --> Producer["block_producer 收集待打包交易"] Producer --> Package["选取合法交易打包进新区块"] Package --> Chain["blockchain.html
进入区块执行与提交"] Package --> Remove["确认上链后从交易池移除"] end RejectFull -.-> Metrics["rejectedCount / addedCount / removedCount 统计"] RejectDup -.-> Metrics RejectInvalid -.-> Metrics Remove -.-> Metrics