62 lines
1.2 KiB
Markdown
62 lines
1.2 KiB
Markdown
# 代理项目
|
||
|
||
Go语言编写的矿工代理服务,支持矿工连接代理并动态切换矿池地址。
|
||
|
||
## 功能
|
||
|
||
- 矿工连接代理服务
|
||
- 默认代理到指定矿池地址
|
||
- 通过RabbitMQ消息动态切换矿池
|
||
- 支持多种加密货币
|
||
|
||
## 快速开始
|
||
|
||
### 环境要求
|
||
- Go 1.23.1+
|
||
|
||
### 编译运行
|
||
|
||
```bash
|
||
# 编译代理程序
|
||
go build -o proxy.exe cmd/proxy.go
|
||
|
||
# 运行代理程序
|
||
./proxy.exe
|
||
```
|
||
|
||
### 配置文件
|
||
|
||
创建 `config.json`:
|
||
|
||
```json
|
||
{
|
||
"coin": "your_coin",
|
||
"zmqAddr": "amqp://localhost:5672",
|
||
"tcpAddr": ":3333",
|
||
"proxyAddr": "pool.example.com:3333",
|
||
"rabbitTopic": "proxy_queue"
|
||
}
|
||
```
|
||
|
||
## 项目结构
|
||
|
||
```
|
||
├── cmd/proxy.go # 代理程序入口
|
||
├── internal/
|
||
│ ├── miner/miner.go # 矿工连接管理
|
||
│ ├── msg/msg.go # 消息结构
|
||
│ ├── proxy.go # 代理服务核心
|
||
│ └── zmq/zmq.go # RabbitMQ处理
|
||
└── go.mod # 依赖管理
|
||
```
|
||
|
||
## 使用说明
|
||
|
||
- **proxy.exe**: 矿工代理服务 (监听TCP连接)
|
||
|
||
## 工作流程
|
||
|
||
1. 矿工连接代理服务
|
||
2. 代理使用默认矿池地址
|
||
3. 收到RabbitMQ消息可切换矿池
|
||
4. 持续转发矿工和矿池消息 |