BTCAgent是定制的高效的专用矿池代理系统。其采用了自定义通信协议,专为了矿场解决带宽问题而设计。
由于Stratum协议采用了TCP长连接模式,一旦有新任务下发,则导致数千连接同时收到数据,此时会导致矿场带宽拥堵不堪,BTCAgent会极大优化下行带宽,减少至数KB,消除新任务下发延时。
同时,解决了传统代理在矿池侧只能看到一个矿机的问题,BTCAgent依然可以在矿池侧看到所有矿机,极大的方便监控与管理。
1万台矿机的性能测试:
支持的操作系统: * Windows * Linux * 其他 golang 编程语言支持的系统
提示:
btcpool协同工作
你可以在此处下载 BTCAgent 的可执行文件:
https://github.com/btccom/btcagent/releases
下载agent_conf.default.json(配置文件模板)和适用于你系统的btcagent-xxx-xxx可执行文件,然后给btcagent-xxx-xxx执行权限(Linux/macOS需要)并重命名为btcagent。
给执行权限和重命名示例:
chmod +x btcagent-linux-x64
mv btcagent-linux-x64 btcagent
我该下载哪个可执行文件?
* 32位Windows系统:btcagent-windows-x86.exe
* 64位Windows系统:btcagent-windows-x64.exe
* 32位Linux系统:btcagent-linux-x86
* 64位Linux系统:btcagent-linux-x64
* 运行32位系统的树莓派:btcagent-linux-arm
* 运行64位系统的树莓派:btcagent-linux-arm64
* 英特尔CPU的Mac:btcagent-macos-x64
* M1芯片的Mac:btcagent-macos-arm64
在包含btcagent和agent_conf.default.json的文件夹中运行以下命令。
如果你使用图形界面,可以在文件管理器空白处右击,选择“在此处打开终端”。
# 从模板创建配置文件
cp agent_conf.default.json agent_conf.json
# 然后按你的需要修改`agent_conf.json`文件
# 创建日志文件夹
mkdir log
# 启动BTCAgent
./btcagent -c agent_conf.json -l log -alsologtostderr
按 Ctrl + C 可停止btcagent。
欲了解配置文件agent_conf.json中每个选项的作用,请看:配置文件详情。
仅适用于运行 systemd 的 Linux 发行版
在包含btcagent,agent_conf.json和文件夹log的文件夹中运行以下命令。
如果你使用图形界面,可以在文件管理器空白处右击,选择“在此处打开终端”。
# 创建 systemd 服务文件。
cat << EOF | sudo tee /etc/systemd/system/btcagent.service >/dev/null
[Unit]
Description=BTCAgent
After=network.target
StartLimitIntervalSec=0
[Service]
Type=simple
Restart=always
RestartSec=1
User=root
ExecStart="$PWD/btcagent" -c "$PWD/agent_conf.json" -l "$PWD/log"
[Install]
WantedBy=multi-user.target
EOF
# 启动服务
sudo systemctl start btcagent
# 设置开机自启动
sudo systemctl enable btcagent
# 检查服务状态
sudo systemctl status btcagent
# 查看服务启动记录
sudo journalctl -u btcagent
# 查看日志
less log/*INFO
# 监视日志(日志有变化会自动刷新)
tail -F log/*INFO
注意:注册为系统服务之后,不能移动文件的位置,否则需要把服务删了重新注册一次才行。
如果不再使用btcagent服务,可以这样删除:
# 停止服务
sudo systemctl stop btcagent
# 禁止开机自启动
sudo systemctl disable btcagent
# 删除服务
sudo rm /etc/systemd/system/btcagent.service
适用于开发者。
如果能下载到适合自己系统的可执行文件,就不需要编译安装。
从 https://go.dev/ 安装 golang
从 https://git-scm.com/ 安装 git
运行以下命令:
bash
git clone https://github.com/btccom/btcagent.git
cd btcagent
go build
然后就能得到可执行文件btcagent(Windows中为btcagent.exe)。
建议在 WSL 中通过 ./build-all.sh 编译。
如果真的想在 Windows 中原生编译,你需要安装来自 MSYS2 的 mingw-w64 gcc。
如果装好后gcc位于C:\msys64\mingw64\bin\gcc.exe,就把C:\msys64\mingw64\bin添加到环境变量PATH里。
注意:编译64位BTCAgent需要64位gcc。
$ claude mcp add btcagent \
-- python -m otcore.mcp_server <graph>