🤢
Tron
  • Mastering TRON
  • Introduction
    • TRON 引言
    • TRON 基础
    • 节点客户端
    • 钱包
    • 交易(内置合约类型)
    • API
    • 开发者资源
  • Internals
    • 超级代表和投票
    • 产块和维护周期
    • 提案和链升级
  • Smart Contract
    • 什么是智能合约
    • Solidity 基础
    • Solidity 进阶
    • Solidity ABI
    • Use Solidity Like a Professional
    • 合约编程误区
    • Tooling
    • TVM
  • TRON by Example
    • Generate Address Offline
    • Transfer TRX
    • Transfer TRC20
    • Parse Event Logs
    • Estimate Energy Usage
    • Call Justswap
    • Query TRC20 Balance
  • Next Generation TRON
    • Current Tech that Benifits Blockchain
由 GitBook 提供支持
在本页
  • 维护周期
  • Genesis Block

这有帮助吗?

  1. Internals

产块和维护周期

所有 Active Witness 按照排序,以严格时序依次产块,产块所在时间区间被称作 slot(槽)。每隔一段事件进入维护周期,暂停产块,进行重新计票和维护操作。

目前主网每 3 秒产一个块,每6小时进入一次维护周期。测试网维护周期间隔一般是 10 分钟。

注意

若某一 Active Witness 在其 slot 时间内没有及时产块并广播,则该 slot 会被网络跳过,记为一次 block miss, 下一 Active Witness 在自己的 slot 继续产块。

Block number 不会被跳过,永远自增 1.

维护周期

维护周期时,节点进行如下操作:

  • 处理提案(见下一节)

  • 重新计票。目前实现只处理上一维护周期至当前事件的所有投票,以 diff 方式处理。

  • 按计票数排序得到新 Active Witness 列表和 Schedule.

  • 更新下次维护周期时间

维护逻辑结束后,网络暂停两个 slot 产快(本意是预留时间给维护周期处理逻辑)。

Genesis Block

Genesis Block 由配置文件生成。指定了公链的初始账号及其资产分配,以及初始 Witness 情况。

提示

Genesis Block 配置一般会包含一个负数余额的账号叫 Blackhole , 链上交易的所有手续费会默认加到这个账号的余额中。

私有链建议使用 T9yD14Nj9j7xAB4dbGeiX9h8unkKHxuWwb 作为 Blackhole 地址。即 410000000000000000000000000000000000000000.

而 Block #1 时并不按照 Genesis Block 所列 Witness 的顺序生成,而是由任一产快节点产出并广播(需要配置 needSyncCheck = false),此时全网节点都会自动接受 Block #1, 并触发第一个维护周期,生成之后的 Active Witness Schedule.

提示

needSyncCheck = false 选项除了产出 Block #1 之外,没有其他作用。

上一页超级代表和投票下一页提案和链升级

最后更新于4年前

这有帮助吗?