自建弹幕库源码

danmu 部署说明

PS:在首次执行之后会自动生成 settings.json

1. 环境要求

依赖版本要求说明
宝塔面板>= 7.0通过「Go 项目」管理服务和进程守护
MySQL / MariaDB>= 5.7 / >= 10.2数据库服务

2. 部署步骤

2.1 上传并解压

  1. danmu-deploy.zip 上传至宝塔 /www/wwwroot/
  2. 解压至 /www/wwwroot/danmu/

2.2 配置数据库

编辑 admin/settings.json,修改数据库连接信息:

{
    "db_server": "127.0.0.1",
    "db_port": "3306",
    "db_username": "root",
    "db_password": "your_password",
    "db_name": "root",
    ...
}

同时修改 admin_password 为你的后台登录密码。
server_port 字段需与宝塔 Go 项目中配置的运行端口保持一致,默认为 8080。若用户在宝塔中使用了其他端口,需同步修改此字段。保存后无需重新编译,重启服务即生效。

优先级:环境变量 > settings.json > 硬编码默认值。

环境变量默认值说明
DB_SERVERlocalhostMySQL/MariaDB 地址
DB_PORT3306数据库端口
DB_USERNAMEroot数据库用户名
DB_PASSWORD123456数据库密码
DB_NAMEroot数据库名
ADMIN_PASSWORD后台 /admin 登录密码

2.3 配置 Go 项目(宝塔)

  1. 进入宝塔「网站 → Go 项目」→「添加 Go 项目」
  2. 配置项:
配置项
执行文件/www/wwwroot/danmu/danmu
项目端口你的监听端口(如 8080
运行目录/www/wwwroot/danmu
  1. 点击确定,宝塔自动启动并守护进程。

宝塔 Go 项目已内置进程守护,无需额外配置计划任务或 Supervisor。

2.4 配置定时清理缓存

admin/settings.jsoncron_key 是定时清理缓存的鉴权密钥。打开宝塔后台设置页面即可查看其值。

宝塔计划任务配置

  1. 进入宝塔「计划任务」→ 添加任务
  2. 任务类型选择「Shell 脚本」
  3. 执行周期建议 30 分钟(频率根据缓存数据量自行调整)
  4. 脚本内容:
curl -s "http://127.0.0.1:8080/api/cron/cleanup?key=你的cron_key"

8080 替换为实际项目端口,你的cron_key 替换为后台显示的密钥。

接口说明

项目
方法GET
路径/api/cron/cleanup?key=<cron_key>
鉴权密钥不匹配返回 {"success": false, "error": "密钥无效"}
清理策略删除修改时间超过 cache_max_age 秒(默认 7200,即 2 小时)的缓存文件

返回示例

{
    "success": true,
    "deleted": 15,
    "freed_mb": "3.27",
    "kept": 42,
    "cache_dir": "dmku",
    "max_age_sec": 7200
}

3. 文件目录

danmu-deploy.zip
├── danmu          # 可执行文件
├── index.html     # 静态首页
├── DEPLOY.md      # 部署说明与更新日志
├── admin/         # 后台管理模块
│   ├── index.html
│   ├── login.html
│   └── assets/    # 静态资源 (CSS / JS)
├── cache/         # 缓存目录
└── dmku/          # 弹幕缓存目录

4. 更新日志

2026-08-14

  • 修复新增视频出现无法匹配官链的问题

2026-08-19

  • 优化人人视频弹幕规则

2026-08-11

  • 全平台移除弹幕去重:删除 DedupAndSort/iqiyiUniqueByContent/youkuDedupKeyindex.go dedupAndSortsortOnly
  • B站 ss 番剧 ID 支持:reSS 正则 + season?season_id= API,修复 duration 毫秒值问题
  • 腾讯视频流式输出:全量内存聚集 → 分批写 ResponseWriter,内存 35MB→5MB
  • 腾讯视频索引缓存:sync.Map 缓存 barrage/base/{vid}
  • 腾讯视频流水线:wg.Wait → channel 扇入
  • 性能:126,712 条弹幕 7.7s→1.6s(-79%),ss24588 0→13,291

2026-07-27

  • 芒果TV多候选标题匹配:抓取 <title> 区分正片/加更版
  • 标题抓取缓存:pageTitleCache 3600s TTL

2026-07-24

  • 修复爱奇艺弹幕规则

2026-07-21

  • 支持 server_port 配置端口
  • 修复长视频弹幕获取不全

2026-07-12

  • 后台登录鉴权

2026-07-09

  • sync.Oncesync.Mutex 修复首次失败永久固化
  • 修复 extractKeywordFromURL 关键词提取错误
  • visit_counter.json 原子写入防清零
  • settings.json 字段顺序修复

2026-07-07

  • rrmj 弹幕源接入
  • allowed_domains_priority 加入 rrsp.com.cn

2026-07-06

  • 全局 CORS 中间件
  • Dashboard 优化 / 仪表盘域名计数
  • settings.json 首次运行自动生成
图片[1]-自建弹幕库源码-果核网
资源下载此资源下载价格为5果核,VIP免费,请先
© 版权声明
THE END
喜欢就支持一下吧
点赞7 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容