尧图网络科技YAOTU DIGITAL 获取报价
获取报价
首页 / 资讯中心 / 文章详情

Shardeum 本地调试网络怎么开启 debug manual mode 并调整 cycleDuration 与 blockProductionRate 参数?

发布时间:2026/9/12 14:01:43

资讯中心
01
ARTICLE

Shardeum 本地调试网络怎么开启 debug manual mode 并调整 cycleDuration 与 blockProductionRate 参数?

Shardeum 本地调试网络怎么开启 debug manual mode 并调整 cycleDuration 与 blockProductionRate 参数?
Shardeum 本地调试网络怎么开启 debug manual mode 并调整 cycleDuration 与 blockProductionRate 参数【免费下载链接】shardeumShardeum is an EVM based autoscaling blockchain项目地址: https://gitcode.com/GitHub_Trending/sh/shardeum在本地跑 Shardeum 调试网络时仓库默认配置并不适合小节点数测试src/config/index.ts中server.mode默认为release、cycleDuration默认为 60 秒src/shardeum/shardeumFlags.ts中blockProductionRate默认为 6即每隔 6 秒生成一个新块见该文件中的注释// generate new block every 6s。要得到一个可调试、节奏更快的本地网络需要按 local-environment-setup.md 的 Manual Mode 路径手动修改源码配置、重新编译后再启动网络。这篇文章给出这条完整操作路径以及每一步改完如何确认生效。一、前置环境Node.js、Rust 与项目编译文档要求的环境版本是固定的不满足时先不要继续后面的修改Node.js18.19.1通过 NVM 管理npm10.2.4Rust1.74.1通过 rustup 管理按 local-environment-setup.md 的 Environment Setup 章节安装 NVM 与 Rust 工具链后完成项目初始化git clone https://github.com/shardeum/shardeum.git cd shardeum npm ci npm run preparenpm run prepare等价于执行tsc -p .见 package.json 中scripts.prepare与scripts.compile的定义会把src/编译到dist/。这一点很重要每次修改下面两个源文件后都必须重新执行它否则节点进程跑的还是旧代码。另外安装 Shardus CLI用于后续启动网络npm install -g shardeum-foundation/tools-shardus-cli npm update shardeum-foundation/archiver二、开启 debug manual mode修改 src/config/index.tslocal-environment-setup.md 的 Manual Mode 第一步要求在 src/config/index.ts 中配置 Debug Mode。对照源码需要改两处server.p2p.forceBogonFilteringOn默认值为true见 src/config/index.ts改为falseserver.mode默认值为release源码中的注释写着must set this to release for public networks or get security on endpoints. use debug for easier debugging见 src/config/index.ts本地调试网络改为debug。改完后这两段在文件中的形态如下注意它们分属不同的配置层级forceBogonFilteringOn位于server.p2p下mode位于server下// src/config/index.ts, server.p2p 内 forceBogonFilteringOn: false,// src/config/index.ts, Debug settings 合并块内 server: { mode: debug, ... }三、关闭本地测试不需要的校验修改 src/shardeum/shardeumFlags.tsManual Mode 第二步要求修改 src/shardeum/shardeumFlags.ts 中的两个 flags这两个 flag 默认都是开启的txBalancePreCheck: true见 src/shardeum/shardeumFlags.tsStakingEnabled: true见 src/shardeum/shardeumFlags.ts本地测试时都要关掉// src/shardeum/shardeumFlags.ts txBalancePreCheck: false, StakingEnabled: false四、调整 cycleDuration 与 blockProductionRate第三步是文档给出的本地测试节奏参数同样分属两个文件// src/config/index.ts cycleDuration: 30, server/features/tickets/updateTicketListTimeInMs: 300000// src/shardeum/shardeumFlags.ts blockProductionRate: 3,对照源码中的默认值含义就是把这些默认节奏调快或调短参数所在文件源码默认值文档建议值cycleDurationsrc/config/index.ts6030updateTicketListTimeInMssrc/config/index.ts600000300000blockProductionRatesrc/shardeum/shardeumFlags.ts63cycleDuration位于server.p2p配置块内updateTicketListTimeInMs位于server.features.tickets配置块内文档用server/features/tickets/...表示这一路径blockProductionRate是 ShardeumFlags 对象的一个字段注释说明其作用是控制新块生成间隔。五、重新编译并启动网络所有源码修改完成后先重新编译再启动 10 节点网络npm run prepare shardus start 10如果之前改过配置又发现配置不对可以先停止并清理再重来。注意最后一条命令会删除instances目录只应在确认该目录下只有本网络的实例数据时执行shardus stop shardus clean rm -rf instances六、验证网络是否正常运行启动后README.md 的 Health Checks 章节给出了节点诊断端点用于确认进程与网络存活GET /is-alive服务器运行时返回 200GET /is-healthy目前与/is-alive相同后续会扩展。如果/is-alive不返回 200说明节点进程没有正常运行回到第五节检查npm run prepare是否在最后一次改码之后执行过——这是这条路径上最容易漏的一步。限制与说明仓库 README.md 的 Installation 章节还提到另一种方式通过环境变量export LOAD_JSON_CONFIGS本地仓库绝对路径/debug-10-nodes.config.json加载 debug-10-nodes.config.json其中已含mode: debug和updateTicketListTimeInMs: 300000。local-environment-setup.md 的 Automatic Mode 则写的是git apply debug-10-nodes.patch但该 patch 文件并不在当前仓库中本文以 Manual Mode 的源码修改路径为准。local-environment-setup.md 中 Manual Mode 的示例代码块使用了 bash 围栏实际修改的是 TypeScript 源文件本文已按源码上下文还原到正确位置。修改src/config/index.ts中的devPublicKeys/multisigKeys与本文任务无关保持原样即可。【免费下载链接】shardeumShardeum is an EVM based autoscaling blockchain项目地址: https://gitcode.com/GitHub_Trending/sh/shardeum创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
02
RELATED NEWS

相关资讯

更多网站建设与数字化升级内容

03
WHY YAOTU

想打造同款高转化官网?

懂行业、懂生意,从建站到增长一站式陪跑

场景化定制

不做模板站,围绕你的业务场景量身设计,小众不撞款。

营销型架构

以转化目标组织内容与路径,让官网真正带来询盘。

全周期服务

设计、开发、运营、运维一体,上线只是开始。

免费获取你的建站方案

留下需求,专属顾问 24 小时内为你输出方案建议。