- 新增配置项以支持旧/新明细表的独立写入开关及目标表名。 - 重构 DatabaseManager,抽象通用批量 COPY 写入内核,支持不同目标表的复用。 - 新增双明细写入编排器,支持旧/新表独立执行、重试及 fallback。 - 调整 HeartbeatProcessor.processBatch(),确保 room_status 独立执行。 - 错误表仅记录新表写入失败,旧表失败不再写入错误表。 - 重新定义消费暂停策略,基于当前启用的关键 sink 判断。 - 补充按 sink 维度的统计项与启动日志。 新增 G4 热表相关的数据库规范与处理逻辑,确保系统在双写模式下的稳定性与可扩展性。
28 lines
789 B
JavaScript
28 lines
789 B
JavaScript
import { defineConfig } from 'vite';
|
|
import { resolve } from 'path';
|
|
|
|
export default defineConfig({
|
|
build: {
|
|
lib: {
|
|
entry: resolve(__dirname, 'src/index.js'),
|
|
name: 'WebBLSHeartbeatServer',
|
|
formats: ['es'],
|
|
fileName: (format) => `index.${format}.js`
|
|
},
|
|
rollupOptions: {
|
|
external: [
|
|
'kafka-node', 'pg', 'redis', 'pg-copy-streams',
|
|
// Node.js core modules
|
|
'events', 'url', 'crypto', 'util', 'net', 'tls', 'buffer', 'path', 'stream', 'stream/promises',
|
|
'node:crypto', 'node:zlib', 'node:fs', 'node:path', 'node:url', 'node:stream', 'node:stream/promises'
|
|
],
|
|
output: {
|
|
globals: {
|
|
'kafka-node': 'KafkaNode',
|
|
'pg': 'Pg',
|
|
'redis': 'Redis'
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}); |