cumulus collator-selection Pallet 解析:Parachain 如何实现开放出块与提名集(完整指南)
cumulus collator-selection Pallet 解析Parachain 如何实现开放出块与提名集完整指南【免费下载链接】cumulusWrite Parachains on Substrate项目地址: https://gitcode.com/gh_mirrors/cum/cumuluscumulus是 Polkadot 生态中用于在 Substrate 上编写 Parachain平行链的官方框架而collator-selection Pallet正是它实现「开放出块」的核心组件它管理出块者Collator的提名集与最终集通过「不可变出块者 社区候选者」两层结构让任何满足条件的账户都能质押押金参与 Parachain 出块。本文带你快速读懂这套提名集机制的设计思路。 它解决什么问题在 Parachain 中出块者Collator负责组装区块候选并提交给 Relay Chain 验证。与传统链的固定验证者不同Parachain 往往希望开放出块权限任何人都可以注册成为候选出块者。collator-selection Pallet 就是为这件事而生的「提名集管理器」源码位于 pallets/collator-selection/src/lib.rs。官方在模块文档中明确了一个重要定位出块本身不是高安全活动最终安全性由 Relay Chain 保障因此该 Pallet 不做复杂的博弈论机制而是用简单透明的规则维护一个健康的出块者集合。️ 两层结构Invulnerable 与 Candidates最终生效的 Collator 集合由两个名单聚合而成名单谁任命是否可被踢除特点Invulnerables不可变出块者治理层❌ 永不淘汰永远在出块集合中Candidates社区候选者自我提名✅ 长时间不在线会被踢先到先得上限MaxCandidatesInvulnerables必须由治理UpdateOrigin设置且账户必须先注册 Session 密钥未注册的账户会被跳过并触发InvalidInvulnerableSkipped事件。Candidates通过register_as_candidate调用自我提名核心条件是已注册 Session 密钥 能质押CandidacyBond候选押金会被 reserve 锁定。两个集合应当互斥调用add_invulnerable时若该账户是候选者会自动从 Candidates 中移除。 提名集如何运转押金、踢除与最小保证这是本 Pallet 最有「治理感」的部分押金机制注册候选时锁定CandidacyBond调用leave_intent退出时押金立即退还但实际退出要等下一个 Session 切换才生效。踢除懒惰者每次新 Session 开始时new_sessionPallet 会调用kick_stale_candidates——凡是在KickThreshold个区块内没有出过块的候选者会被移出集合并退还押金。最小出块保证任何操作退出、移除 Invulnerable如果会让总出块者数量跌破MinEligibleCollators都会被拒绝报TooFewEligibleCollators确保链上永远有人能出块。上线保护候选者注册时的「首次出块时间」被记为当前区块 KickThreshold避免新注册者因 Session 延迟而被误踢。每个 Session 切换: Candidates ──踢除懒惰者── 活跃候选 Invulnerables 活跃候选 ── 最终 Collator 集合 奖励分配Pot 账户是怎么分钱的Pallet 维护一个链上「金库」账户由PotId生成官方链上为PotStake。每出一个区块出块者自动获得两笔奖励Pot 余额的一半扣除最小存在量 ED区块内交易费的一半另一半交易费回流进 Pot。这意味着想让出块者拿到奖励只需先向 Pot 账户转入一笔资金即可实现极简。⚙️ 关键配置参数速查以 Asset HubPolkadot的 Runtime 配置为例参见 parachains/runtimes/assets/asset-hub-polkadot/src/lib.rs参数取值含义MaxCandidates100社区候选者上限MinEligibleCollators4出块者下限保底出块能力MaxInvulnerables20治理任命出块者上限KickThreshold1 个 Session6 小时不在线超过此值即被踢除UpdateOriginRoot 或 StakingAdminXCM 治理谁有权改参数值得注意的是UpdateOrigin采用了EitherOfDiverseEnsureRoot, EnsureXcmIsVoiceOfBody...的组合——不仅 Root 可以管理Relay Chain 通过 XCM 发出的治理指令也能直接操作提名集这是开放出块治理化的关键设计。 新手动手如何成为候选出块者在类似 parachain-template/runtime/src/lib.rs 的链上参与开放出块的步骤是使用session setKeys为本账户注册 Session/Aura 出块密钥未注册会报ValidatorNotRegistered确保余额可质押CandidacyBond调用collatorSelection registerAsCandidate完成提名先到先得超过DesiredCandidates时会被TooManyCandidates拒绝保持节点在线——每个 Session 结束时KickThreshold内没出过块就会被踢出并退还押金。 源码地图核心逻辑提名、踢除、奖励、Session 管理pallets/collator-selection/src/lib.rs权重与基准测试pallets/collator-selection/src/weights.rs、pallets/collator-selection/src/benchmarking.rs存储版本迁移pallets/collator-selection/src/migration.rs集成示例parachains/runtimes/assets/asset-hub-polkadot/src/lib.rs与parachains/runtimes/bridge-hubs/bridge-hub-polkadot/src/lib.rs✅ 小结cumulus 的 collator-selection Pallet 用「两层提名集 押金 懒惰踢除 最小保底」四个简单机制就实现了 Parachain 的开放出块治理者提供稳定底座Invulnerables社区通过质押押金自由进出候选池Candidates出块奖励通过 Pot 自动分配。规则简单透明却恰好满足了开放出块所需的弹性与安全底线。【免费下载链接】cumulusWrite Parachains on Substrate项目地址: https://gitcode.com/gh_mirrors/cum/cumulus创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关新闻

过了查重却过不了AIGC检测?2026论文AI工具横评+分阶段组合,帮你省钱不踩坑

过了查重却过不了AIGC检测?2026论文AI工具横评+分阶段组合,帮你省钱不踩坑

又到毕业季,身边学弟学妹的焦虑已经从"论文写不完"变成了"过了查重过不了AIGC检测"。现在高校普遍实行"双检"——既要查重复率,又要查AI生成率,不少同学用AI辅助写作后,对着满屏标红的AIGC报告欲哭…

2026/11/13 4:51:00 阅读更多 →
【Linux】线程到底是什么?从轻量级进程、虚拟地址到页表与 MMU,一次理清线程底层模型

【Linux】线程到底是什么?从轻量级进程、虚拟地址到页表与 MMU,一次理清线程底层模型

🔥个人主页:爱和冰阔乐 📚专栏传送门:《数据结构与算法》 、C 🐶学习方向:C方向学习爱好者 ⭐人生格言:得知坦然 ,失之淡然 🏠博主简介 文章目录前言一、线程到底是什么…

2026/11/10 3:00:56 阅读更多 →
天猫上架软件:活动名额毫秒级抢占,提交速度比人工快200倍

天猫上架软件:活动名额毫秒级抢占,提交速度比人工快200倍

天猫上架软件:活动名额毫秒级抢占,提交速度比人工快200倍 跑店群的兄弟都清楚,天猫的自动化上架,是店群运营中最耗人力也最容易出错的环节。 手动上架一个商品从填写标题、上传主图、设置SKU、填写详情到发布,熟练操…

2026/11/9 13:57:28 阅读更多 →

最新新闻

Electron桌面应用开发实战:从环境搭建到打包发布全流程

Electron桌面应用开发实战:从环境搭建到打包发布全流程

做前端这些年,我大部分时间都在跟浏览器标签页打交道,直到第一次把桌面应用跑起来,才发现原来自己一直被限制在地址栏和刷新按钮围起来的框框里。Electron这个词,最开始是在某段时间频繁出现在同事的讨论里,一个用HTML…

2026/11/12 5:00:00 阅读更多 →
滑盖智能锁T109深度解析:结构原理、安装调试与故障排查

滑盖智能锁T109深度解析:结构原理、安装调试与故障排查

简介:亚太天能T109滑盖智能锁产品说明书是一份PDF格式的官方技术文档,主要面向智能锁安装人员、终端用户及售后维护者,帮助快速掌握产品安装、配置与常见故障处理。全包仅1个PDF文件,大小4.37MB,内容结构清晰&#xff…

2026/11/12 5:13:20 阅读更多 →
PMSM弱磁控制原理与Simulink建模:高速AGV驱动系统设计指南

PMSM弱磁控制原理与Simulink建模:高速AGV驱动系统设计指南

上个月我在调试一台高速AGV的驱动系统,整车要求空载跑到8m/s,电机转速已经拉到额定点,驱动器的输出电压也顶到了母线电压极限附近。再往上踩速度指令,转速纹丝不动,三相电流反而开始震荡。那会儿我的第一反应就是&…

2026/11/12 5:13:20 阅读更多 →
C++核心知识点:从内存管理到STL的实战指南

C++核心知识点:从内存管理到STL的实战指南

C 这门语言我前前后后折腾了十几年,用它写过嵌入式驱动、做过游戏服务端,也搭过基础组件库。每次看到新人一头扎进"C 核心知识点"这个搜索词,我其实挺感慨的——这门语言的难点从来不是语法多,而是知识点之间的耦合太深…

2026/11/12 18:22:26 阅读更多 →
T109滑盖智能锁怎么装?安装调试与故障排查全攻略

T109滑盖智能锁怎么装?安装调试与故障排查全攻略

简介:亚太天能T109滑盖智能锁产品说明书以PDF格式发布,适合智能锁用户、安装人员与售后维修人员阅读。内容围绕T109系列指纹密码刷卡锁展开,先介绍前面板、后面板、锁体、机械钥匙、电池盒盖等部件名称与功能,再给出完整安装步骤&…

2026/11/12 18:22:25 阅读更多 →
LLM知识降熵:从信息垄断到理解权下放

LLM知识降熵:从信息垄断到理解权下放

你有没有过这种经历:翻开源码注释、论文摘要或者一份专业报告,每个字都认识,连在一起却像天书。想找人聊聊,身边要么没人懂,要么懂的懒得跟你解释。后来我试着把同一段内容丢给一个大语言模型,几秒钟之后&a…

2026/11/12 5:13:20 阅读更多 →

日新闻

周新闻

月新闻