51 lines
1.5 KiB
Markdown
51 lines
1.5 KiB
Markdown
# stwzhj-kafka-consumer 服务说明
|
||
|
||
## 功能描述
|
||
|
||
消费SCRAM认证的Kafka消息,并通过HTTP批量发送给生产者服务。
|
||
|
||
## 启动命令格式
|
||
|
||
```bash
|
||
java -jar stwzhj-kafka-consumer.jar <port> <cityName> <bootstrapServers> <topics> <username> <cityCode>
|
||
```
|
||
|
||
### 参数说明
|
||
|
||
- `port`: 服务端口
|
||
- `cityName`: 城市名称
|
||
- `bootstrapServers`: Kafka服务器地址,多个地址用逗号分隔
|
||
- `topics`: 订阅的主题,多个主题用逗号分隔
|
||
- `groupId`: 消费者组ID
|
||
- `cityCode`: 城市代码
|
||
|
||
### 环境变量
|
||
|
||
- `KAFKA_USERNAME`: Kafka用户名(必填)
|
||
- `KAFKA_PASSWORD`: Kafka密码(必填)
|
||
|
||
## 启动示例
|
||
|
||
```bash
|
||
# 设置环境变量
|
||
export KAFKA_USERNAME=your_username
|
||
export KAFKA_PASSWORD=your_password
|
||
|
||
# 启动服务
|
||
java -jar stwzhj-kafka-consumer.jar 11000 huangshan 192.168.10.81:9092,192.168.10.82:9092,192.168.10.83:9092 topic.send.2,topic.send.3,topic.send.4,topic.send.5 hs_gp 3410
|
||
```
|
||
|
||
## 高吞吐量优化
|
||
|
||
1. **批量发送**: 将多条消息打包成一批发送,减少HTTP请求次数
|
||
2. **连接池**: 使用Apache HttpClient连接池,复用TCP连接
|
||
3. **压缩传输**: 支持Gzip压缩,减少网络传输数据量
|
||
4. **多线程处理**: 使用3个线程处理消息队列
|
||
|
||
## 注意事项
|
||
|
||
1. 确保生产者服务已启动并正常运行
|
||
2. 根据实际负载情况调整批量发送大小和超时时间
|
||
3. 监控消息队列容量,避免消息丢失
|
||
4. Kafka密码需要在启动脚本中通过环境变量或配置文件传入
|