BTC

Guide

内存池(mempool)是什么?比特币未确认交易的候车室

キーボードで操作するイメージ
写真: Satheesh Sankaran / CC BY 2.0

结论:mempool 是"未确认交易的候车室"。一旦拥堵,手续费就会上涨,确认也会变慢

内存池(mempool,memory pool)指的是尚未被打包进区块的未确认交易临时等待的地方。每个比特币节点都拥有自己的 mempool,矿工会从这里堆积的交易中挑选手续费较高的打包进区块。

本文要点

- mempool = 未确认交易的候车室,由每个节点保存在内存中

- 交易增多、区块容量不够时会发生拥堵,手续费(sat/vB)随之上涨

- 矿工优先选择单价高的交易,因此形成了手续费市场

- 可在 mempool.space 查看当前的拥堵状况和 feerate

一笔交易被确认之前的流程

  1. 从钱包发起转账 → 交易被广播到网络
  2. 进入各节点的 mempool,成为未确认交易
  3. 矿工挑选手续费较高的交易打包进区块,完成确认(参见什么是挖矿(mining)?
  4. 已进入区块的交易从 mempool 中移除

确认次数的计算方式请参见什么是比特币的确认(confirmation)?

为什么会发生拥堵

一个区块能容纳的数据量存在上限,而区块平均约每 10 分钟生成一个(参见比特币的运作原理)。当发送过来的交易超过这个速度,交易就会在 mempool 中堆积,这就是"拥堵"。一旦拥堵,想尽快被打包的人会提出更高的 feerate,从而在手续费市场上推高单价。

此外,Bitcoin Core 默认为 mempool 分配约 300MB 内存,达到上限后就不再接收低于一定 feerate 的新交易。低手续费的交易若长时间滞留,最终可能会从 mempool 中被删除。

如何在 mempool.space 上查看

在 mempool.space 上,大致可以读取到以下信息。

项目能了解什么
Mempool size未确认交易堆积了多少(拥堵程度)
Fee Estimates当前应支付的 feerate(sat/vB)参考值
最近的区块交易大致以怎样的 feerate 被打包

拥堵越严重,推荐的 feerate 就越高。手续费的确定方式请参见比特币手续费的运作机制

常见问题

mempool 在哪里?只有一个吗?

它并不是存在于某一台中央服务器上。比特币的每个节点都在自己的内存中保存各自的 mempool。由于节点的设置和接收情况不同,内容并不会完全一致。

mempool 拥堵会怎样?

未确认交易会堆积,被矿工打包所需的手续费(sat/vB)参考值会上升。手续费低的交易排队时间更长,确认所需的时间也更久。

未确认的交易会一直留在 mempool 里吗?

不会。一旦被打包进区块,就会从 mempool 中移除。另一方面,手续费低、长期未被打包的交易可能会被节点从 mempool 中删除(drop/expire),此时资金仍保留在发送方一侧。

参考・出处

投资须知

本文仅以提供信息为目的,并非投资建议。比特币存在价格波动、被黑客攻击、丢失等风险。投资决策请自行承担责任,并在闲余资金的范围内进行。税制与监管可能发生变化,最新信息请务必查阅官方一手来源。

Sources

  1. mempool.space FAQ
  2. Vocabulary — bitcoin.org
  3. Transaction fees — Bitcoin Wiki

常见问题

mempool 在哪里?只有一个吗?
它并不是存在于某一台中央服务器上。比特币的每个节点都在自己的内存中保存各自的 mempool。由于节点的设置和接收情况不同,内容并不会完全一致。
mempool 拥堵会怎样?
未确认交易会堆积,被矿工打包所需的手续费(sat/vB)参考值会上升。手续费低的交易排队时间更长,确认所需的时间也更久。
未确认的交易会一直留在 mempool 里吗?
不会。一旦被打包进区块,就会从 mempool 中移除。另一方面,手续费低、长期未被打包的交易可能会被节点从 mempool 中删除,此时资金仍保留在发送方一侧。
BIT NEWS 编辑局
  • 日本本土编辑团队
  • 一手信息・注明出处
  • 可变事实标注核实日期

BIT NEWS 编辑局。以一手信息为准,对会变动的事实标注核实日期。

本文仅供参考,不构成金融、投资或交易建议。价格为参考快照,可能已过时。请务必自行研究。