56 个版本 (35 个主要破坏性版本)
37.0.0 | 2024年7月18日 |
---|---|
36.0.0 | 2024年7月12日 |
35.0.0 | 2024年6月21日 |
34.0.0 | 2024年5月23日 |
2.0.0-alpha.5 | 2020年3月24日 |
#1 in #fee
每月下载量 12,738
用于 120 个软件包(43 个直接使用)
2.5MB
44K SLoC
交易支付托盘
此托盘提供了执行交易所需的最基本的逻辑。这包括
- 权重费用:与交易消耗的权重成比例的费用。
- 长度费用:与交易编码长度成比例的费用。
- 小费:可选的小费。小费提高了交易的优先级,使其有更高的概率被交易队列包括。
此外,此托盘还允许配置
- 通过
Config::WeightToFee
将一个权重的单位与一个费用的单位之间的映射。 - 通过定义一个基于前一区块末尾链的最终状态的乘数来更新下一区块费用的方法。这可以通过
Config::FeeMultiplierUpdate
进行配置。
许可证:Apache-2.0
lib.rs
:
交易支付托盘
此托盘提供了执行交易所需的最基本的逻辑。这包括
- 基本费用:这是用户为交易支付的最小金额。它在运行时被声明为一个基本权重,并使用
WeightToFee
转换为费用。 - 权重费用:与交易消耗的权重成比例的费用。
- 长度费用:与交易编码长度成比例的费用。
- 小费:可选的小费。小费提高了交易的优先级,使其有更高的概率被交易队列包括。
基本费用、调整后的权重和长度费用构成了包含费用,这是交易被包含在区块中的最低费用。
最终费用的公式
inclusion_fee = base_fee + length_fee + [targeted_fee_adjustment * weight_fee];
final_fee = inclusion_fee + tip;
targeted_fee_adjustment
:这是一个乘数,可以根据网络的拥堵情况调整最终费用。
此外,此托盘还允许配置
- 通过
Config::WeightToFee
将一个权重的单位与一个费用的单位之间的映射。 - 通过定义一个基于前一区块末尾链的最终状态的乘数来更新下一区块费用的方法。这可以通过
Config::FeeMultiplierUpdate
进行配置。 - 费用通过
Config::OnChargeTransaction
支付。
依赖项
~18–33MB
~542K SLoC