You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Sawtooth测试网络中部署TP(交易处理器)

自定义XO交易处理器部署到Sawtooth单测试节点操作步骤
  • 前置检查:先确认你的测试节点环境已经安装Python版本的Sawtooth SDK,未安装可执行命令pip3 install sawtooth-sdk完成安装。
  • 第一步:将你改写完成的交易处理器代码上传至运行Sawtooth测试节点的设备中,可放在任意你拥有读写权限的目录下,例如/opt/sawtooth/custom_tp/。
  • 第二步:停止节点默认运行的官方XO交易处理器(如果之前已经启用的话):
    如果你是通过systemd部署的原生单节点,执行systemctl stop sawtooth-xo-tp-python;如果你是通过Docker部署的节点,停止对应XO交易处理器的容器即可。
  • 第三步:临时运行自定义交易处理器验证逻辑:
    进入你存放代码的目录,执行命令python3 你的交易处理器文件名.py -v -C tcp://localhost:4004,其中4004是Sawtooth验证器默认的连接端口,如果你修改过节点配置请替换为对应端口,-v参数用于开启详细日志方便调试。
  • 第四步:验证部署成功:
    查看交易处理器运行日志,出现成功连接到验证器的提示即为连接正常;也可以在节点上执行sawtooth tp list命令,查看返回的已注册交易处理器列表中是否包含你自定义的XO交易族信息,存在即代表注册成功。你也可以发送一笔测试交易,验证你改写的逻辑是否正常生效。
  • 第五步(可选,后台常驻运行):
    如果需要让自定义交易处理器后台运行且开机自启,可以新建systemd服务配置文件/etc/systemd/system/sawtooth-custom-xo-tp.service,写入以下内容:

[Unit]
Description=Custom Sawtooth XO Transaction Processor
After=sawtooth-validator.service

[Service]
User=sawtooth
ExecStart=/usr/bin/python3 /你的代码存放路径/你的交易处理器文件名.py -C tcp://localhost:4004
Restart=always

[Install]
WantedBy=multi-user.target
保存后依次执行以下命令生效:
systemctl daemon-reload
systemctl start sawtooth-custom-xo-tp
systemctl enable sawtooth-custom-xo-tp

注意事项

  • 如果你改写时修改了交易族名称(family name)、版本号,发送交易时需要使用修改后的对应参数,否则交易处理器无法匹配到对应交易。
  • 如果你是通过Docker Compose部署的测试节点,可以将你的自定义代码打包成新的Docker镜像,替换原配置文件中XO交易处理器的镜像配置,重启服务即可生效。
  • 调试阶段建议保留-v参数输出详细日志,出现问题可快速定位原因。

内容的提问来源于stack exchange,提问作者Ranski

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.03 12:57:03