帮助信息中心

找不到答案?在这里搜索您的问题

性能优化指南

系统内置了多项性能优化,保障百万级数据量下的快速访问。

一、已实施的数据库优化

  • 索引优化:为 vod_data 表创建了 6 个常用索引(站点ID、是否失效、创建时间、频道、采集时间、分类)
  • 全文索引:建立了 ft_name_actor 全文索引,加速标题和演员搜索
  • COUNT 缓存:视频总数查询结果缓存 5 分钟,避免全表 COUNT 扫描
  • 搜索缓存:关键词搜索结果缓存 30 秒,减少重复查询

二、分页优化

  • 游标分页:深分页使用 WHERE id < last_id LIMIT 20 替代 OFFSET,避免全表扫描
  • 边界优化:超过 1 万条数据时自动切换为游标分页
  • LIMIT 优化:列表查询始终使用 LIMIT 限制返回行数

三、缓存策略

系统使用多级文件缓存:

  • 统计数据缓存:30 分钟(视频总数、分类统计等)
  • 分类数据缓存:10 分钟(分类列表、分组分类)
  • 站点数据缓存:5 分钟(资源站点列表)
  • 全文索引状态:10 分钟(索引是否存在检测)
  • COUNT 结果缓存:5 分钟(无筛选)/ 30 秒(有筛选)

四、前端优化

  • 异步加载:后台管理页面统计数据异步加载,首屏快速渲染
  • 图片懒加载:封面图片进入可视区域后才加载
  • CSS/JS 压缩:静态资源已压缩
  • CDN 加载:第三方库使用 CDN 加载

五、搜索优化

  • 全文索引:支持 MATCH...AGAINST 全文搜索(需 MySQL 全文索引)
  • 前缀匹配:单关键词搜索使用 LIKE 前缀匹配(可走索引)
  • 搜索缓存:相同关键词搜索结果缓存 30 秒
  • 降级策略:全文索引不可用时自动降级为 LIKE 查询

六、大数量级建议

当视频数量超过百万级时,建议:

  • 定期执行重复合并,减少冗余数据
  • 定期清理失效视频,控制数据量
  • 在服务器空闲时段执行采集任务
  • 开启图片本地化,减少外链请求
  • 配置 MySQL 查询缓存和 innodb_buffer_pool_size
统计信息

📝 文章总数:11

✅ 已发布:11

❌ 已下架:0

需要帮助?

如果以上文章无法解决您的问题,请联系客服:

客服QQ:8888

邮箱:kefu@api.com.cn

客服

客服

联系客服 联系客服

在线时间
12:00 - 22:00

关注微信公众号

关注微信公众号

资源聚合

频道:pd3598888

客服邮箱

kefu@api.com.cn