XuJiacheng eb94aaf92b feat: 升级心跳数据库为高吞吐日分区模型(v2)
- 新增 heartbeat 数据库与表结构文档,描述心跳明细表设计及字段约束。
- 新增 OpenSpec 符合性说明文档,指出与规范的一致点及偏差。
- 新增 Kafka 心跳数据推送说明文档,定义消息格式与推送方式。
- 更新数据库创建脚本,支持 UTF-8 编码与中文排序规则。
- 更新心跳表结构脚本,定义主表及索引,采用 ts_ms 日分区。
- 实现自动分区机制,确保按天创建分区以支持高吞吐写入。
- 添加数据库应用脚本,自动执行 SQL 文件并验证表结构。
- 添加运行时烟雾测试脚本,验证数据库连接与基本操作。
- 添加完整的烟雾测试脚本,验证数据插入与分区创建。
2026-01-12 19:53:27 +08:00

Web_BLS_Heartbeat_Server

BLS心跳接收端用于接收并处理Kafka队列中的心跳数据经过解包处理后写入PostgreSQL数据库。

功能介绍

  • 从Kafka队列接收心跳数据
  • 解包和验证心跳数据格式
  • 批量处理心跳数据,提高处理效率
  • 将处理后的数据写入PostgreSQL数据库
  • 支持高并发和自动重连机制

技术栈

  • Node.js (JavaScript) - 运行环境
  • Vite - 构建工具
  • Kafka - 消息队列
  • PostgreSQL - 数据库

快速开始

安装依赖

npm install

配置

复制配置文件模板并根据环境需求修改:

cp src/config/config.example.js src/config/config.js

构建

npm run build

运行

npm run dev

项目结构

├── src/                  # 源代码目录
│   ├── config/           # 配置文件
│   ├── kafka/            # Kafka消息处理
│   ├── processor/        # 心跳数据处理
│   ├── db/               # 数据库操作
│   └── index.js          # 项目入口
├── openspec/             # OpenSpec规范文档
├── package.json          # 项目依赖
├── vite.config.js        # Vite配置
└── README.md             # 项目说明

开发命令

命令 描述
npm install 安装项目依赖
npm run build 构建项目
npm run dev 启动开发服务器
npm run test 运行测试
npm run lint 代码检查
Description
BLS心跳接收端
Readme 447 KiB
Languages
JavaScript 85.5%
Batchfile 7.2%
PLpgSQL 7.1%
Dockerfile 0.2%