- Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy path.env.example
More file actions
Latest commit
164 lines (133 loc) · 4.23 KB
/
Copy path.env.example
File metadata and controls
164 lines (133 loc) · 4.23 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
# =================================
# FRKB API 环境变量配置示例
# =================================
# 将此文件复制为 .env 并填入实际配置值
# =================================
# 🚀 服务器基础配置
# =================================
# 服务器运行端口
PORT=3001
SERVER_PORT=3001
# 运行环境 (development/production)
NODE_ENV=development
# API路由前缀
API_PREFIX=/frkbapi/v1
# =================================
# 🔐 安全认证配置 (必需)
# =================================
# API访问密钥 (必须修改!)
API_SECRET_KEY=FRKB_API_SECRET_TOKEN_2024_CHANGE_THIS
# 管理员访问令牌 (可选)
ADMIN_SECRET_TOKEN=your_admin_secret_token
# =================================
# 🗄️ MongoDB 数据库配置 (必需)
# =================================
# MongoDB连接地址 (不包含数据库名)
MONGODB_URI=mongodb://localhost:27017/
# 数据库用户名
MONGODB_USERNAME=your_username
# 数据库密码
MONGODB_PASSWORD=your_password
# 认证数据库名称
MONGODB_DATABASE=frkb_database
# =================================
# ⚡ 性能优化配置
# =================================
# 启用布隆过滤器 (true/false) - 建议启用
BLOOM_FILTER_ENABLED=true
# 布隆过滤器最小容量 (根据预期指纹数量设置)
BLOOM_FILTER_MIN_CAPACITY=50000
# 增长倍数预估 (5-15)
BLOOM_FILTER_GROWTH_MULTIPLIER=5
# 基础倍数 (1.2-1.5)
BLOOM_FILTER_BASE_MULTIPLIER=1.2
# 误报率 (0.01 = 1%)
BLOOM_FILTER_FALSE_POSITIVE_RATE=0.01
# 内存缓存
CACHE_TTL=3600
CACHE_MAX_SIZE=10000
# =================================
# 🚦 请求限制配置 (简化架构)
# =================================
# 全局基础限流:每个时间窗口最大请求数
RATE_LIMIT_MAX=100
# 时间窗口长度 (毫秒) - 1分钟
RATE_LIMIT_WINDOW_MS=60000
# 注意:严格限流(10次/5分钟)在代码中硬编码,用于敏感操作
# =================================
# 📦 批处理配置
# =================================
# 批处理大小
BATCH_SIZE=2000
# 最大并发批次数
MAX_CONCURRENT_BATCHES=4
# 每批超时时间 (毫秒)
TIMEOUT_PER_BATCH=30000
# 重试次数
RETRY_TIMES=3
# =================================
# 📋 日志配置 (已优化)
# =================================
# 日志级别 (debug/info/warn/error)
LOG_LEVEL=info
# 日志目录
LOG_DIR=./logs
# 单个日志文件最大大小
LOG_MAX_SIZE=5m
# 应用日志保留时间
LOG_APP_RETENTION=3d
# 错误日志保留时间
LOG_ERROR_RETENTION=7d
# 启用精简日志模式
LOG_MINIMAL=false
# 跳过健康检查日志
LOG_SKIP_HEALTH=true
# 跳过成功认证日志
LOG_SKIP_AUTH_SUCCESS=true
# =================================
# 🌐 HTTP配置
# =================================
# 是否启用响应压缩
ENABLE_COMPRESSION=true
# 请求体大小限制
REQUEST_SIZE_LIMIT=10mb
# =================================
# 🎵 精选库云同步
# =================================
# 音频实体本机目录(按 sha256 分桶),不进 Mongo
CURATED_LIBRARY_BLOB_ROOT=./data/frkb-blobs
# 每用户精选库音频总量上限(字节),默认 100GB
DEFAULT_MAX_CURATED_BLOB_BYTES_PER_USER=107374182400
# 首次快照锁时长(毫秒),默认 2 小时
CURATED_LIBRARY_FIRST_SNAPSHOT_LOCK_MS=7200000
# 精选库音频分片大小(字节),默认 8MB
CURATED_LIBRARY_BLOB_CHUNK_SIZE=8388608
# 迁移时从该目录按 sha256 对账拷贝音频(可选)
# CURATED_LIBRARY_BLOB_MIGRATE_SOURCE=/path/to/source/frkb-blobs
# =================================
# 📊 生产环境优化建议
# =================================
# 生产环境推荐配置:
# NODE_ENV=production
# LOG_LEVEL=warn
# LOG_MINIMAL=true
# LOG_APP_RETENTION=1d
# LOG_ERROR_RETENTION=3d
# BLOOM_FILTER_ENABLED=true
# BLOOM_FILTER_MIN_CAPACITY=150000 # 针对大规模数据
# CACHE_ENABLED=true
# RATE_LIMIT_MAX=100
# RATE_LIMIT_WINDOW_MS=60000
# =================================
# 🛠️ 开发环境优化建议
# =================================
# 开发环境推荐配置:
# NODE_ENV=development
# LOG_LEVEL=debug
# LOG_MINIMAL=false
# LOG_SKIP_HEALTH=true
# BLOOM_FILTER_ENABLED=true # 建议开启以测试完整功能
# BLOOM_FILTER_MIN_CAPACITY=20000 # 开发环境可用较小值
# CACHE_ENABLED=true
# RATE_LIMIT_MAX=100
# RATE_LIMIT_WINDOW_MS=60000