Files
m2pool_payment/internal/queue/README.md
2025-10-21 10:58:58 +08:00

47 lines
1.0 KiB
Markdown

# RabbitMQ 服务模块
本模块提供 RabbitMQ 消息队列的封装,用于接收业务系统的请求和发送交易确认响应。
## 快速使用
```go
// 创建 RabbitMQ 服务
rmqServer, err := rmq.NewRabbitMQServer(config.RMQConfig)
if err != nil {
log.Fatal(err)
}
defer rmqServer.Close()
// 设置消息回调
rmqServer.OnTopupMsg = func(msg message.TopupMsg_req) {
// 处理充值请求
}
// 启动监听
rmqServer.Start()
// 发送响应
rmqServer.PublishTopupResp(response)
```
## 消息队列结构
### 请求队列(消费)
- `topup` - 充值请求
- `withdraw` - 提现请求
- `pay` - 支付请求
### 响应队列(发布)
- `topup_resp` - 充值响应
- `withdraw_resp` - 提现响应
- `pay_resp` - 支付响应
## 特性
**自动重连** - 连接断开时自动重连
**消息持久化** - 消息不会丢失
**手动确认** - 处理成功后才确认消息
**并发安全** - 支持多 goroutine 并发发布
更多详情请参考 [主 README](../../README.md)。