- 添加项目基础结构,包括 .gitignore、package.json、Docker 配置和环境变量示例 - 实现核心模块:Kafka 消费者、PostgreSQL 数据库管理器、Redis 客户端与错误队列 - 添加工具类:日志记录器、指标收集器、UUID 生成器 - 实现数据处理器,支持 0x36 上报和 0x0F 命令的解析与存储 - 添加数据库初始化脚本和分区管理,支持按时间范围分区 - 引入 Zod 数据验证和 Vitest 单元测试框架 - 提供完整的项目文档,包括数据库设计、Kafka 格式规范和 Redis 集成协议
1.1 KiB
1.1 KiB
BLS RCU Action Server
Overview
Backend service for processing RCU action events from Kafka, parsing them, and storing them in PostgreSQL. Includes error handling via Redis and heartbeat monitoring.
Architecture
- Input: Kafka Topic (
blwlog4Nodejs-rcu-action-topicor configured via env) - Processing: Node.js Service
- Consumer:
kafka-nodeconsumer group - Parser: Parses JSON messages, handles UDP raw data decoding
- Database: PostgreSQL (Batch insert)
- Error Handling: Redis List (
error_queue) for failed messages + Retry mechanism
- Consumer:
- Output: PostgreSQL Table (
rcu_action_events)
Configuration (Environment Variables)
The project is configured via .env. Key variables:
- Kafka:
KAFKA_BROKERS,KAFKA_TOPIC,KAFKA_SASL_USERNAME,KAFKA_SASL_PASSWORD - Database:
DB_HOST,DB_PORT,DB_USER,DB_PASSWORD,DB_DATABASE,DB_SSL - Redis:
REDIS_HOST,REDIS_PORT,REDIS_PASSWORD
Development Constraints
- Schema: Must strictly follow
docs/readme.md. - Database: Do not alter Schema Name (
rcu_action) or Table Name (rcu_action_events) unless explicitly requested.