order-producer/README.md
2025-06-17 11:33:17 +08:00

62 lines
1.7 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 订单管理系统Kafka
该项目是一个基于Kafka的订单管理服务包含以下核心组件
- `main.go` - 服务入口文件
- `go.mod` - Go语言依赖管理文件
- `config.toml` - 配置文件(环境变量/数据库设置等)
- `docker-compose.yml` - 容器化部署配置
- `.dockerignore` - Docker构建忽略规则
## 快速开始
1. 安装依赖
```bash
go mod download
```
2. 启动Kafka环境
```bash
docker-compose up -d
```
3. 运行服务
```bash
go run main.go
```
## 系统要求
- Go 1.21+
- Docker 20.10+
- Kafka 2.0+
环境变量可通过`.env`文件配置
## 配置文件说明
配置文件采用TOML格式包含以下主要配置块
### Kafka配置
```toml
[kafka]
brokers = ["niit-node3:9092"] # Kafka代理地址列表
topic = "orders" # 消息主题名称
send_interval = "1s" # 消息发送时间间隔
retry_max = 3 # 最大重试次数
retry_backoff_ms = 100 # 重试间隔时间(毫秒)
version = "2.8.0" # Kafka版本号
```
### 订单数据配置
```toml
[order]
categories = [ # 商品分类配置
{ name = "电子", items = ["手机", "笔记本电脑", "耳机", "平板", "相机"] },
{ name = "服饰", items = ["T恤", "牛仔裤", "运动鞋", "外套", "连衣裙"] },
{ name = "食品", items = ["饼干", "巧克力", "牛奶", "方便面", "坚果"] },
{ name = "家居", items = ["沙发", "床垫", "餐桌", "椅子", "台灯"] },
{ name = "图书", items = ["小说", "漫画", "教材", "杂志", "工具书"] }
]
scores = [80, 90, 100] # 订单评分范围
valids = ["true", "false"] # 订单有效性状态
```