内存池是节点所看到的所有未确认交易的集合。
内存池本质上是一种加密货币节点机制,用于存储未确认交易的信息,充当尚未包含在区块中的交易的等候室。
事实上,要向矿工提交交易,节点必须将其转发给彼此,直到它传播到整个网络。 这个内存池是节点所有未决交易的持有区域。
内存池是节点所见的所有未确认交易的集合,这使它能够决定是否中继新交易。
有多少节点就有多少内存池。 这是因为并非所有节点都同时接收相同的交易,因此某些节点在给定时间存储的信息比其他节点多。 每个人都可以使用他们选择的硬件运行自己的节点,因此所有节点都具有不同的容量来存储未确认的交易。 结果呢? 每个节点都有自己的待处理交易版本,这解释了内存池大小的变化以及在不同来源中发现的交易数量。
当一个节点收到一个新的有效区块时,它最终会从其内存池中删除该区块中包含的所有交易,以及具有冲突输入的交易。 这可能会导致内存池大小急剧下降。
运行节点没有经济激励,专用于它的硬件通常是有限的。 一个节点的内存池经常用尽它的 RAM,当这种情况发生时,该节点将崩溃并在旧版本的比特币中以空内存池重新启动。 然而,在最近的更新中,如果内存池大小太接近 RAM 容量,节点会设置一个最低费用阈值,在这里,每 kB 费用低于该阈值的交易可以立即从内存池中删除,并且只允许每 kB 费用足够大的新交易。