Skip to content

视频聚合 APP 的后台架构


🏷 杂项   🕒 5/31/2013

一、后台模块与功能:

  1. WebService:为客户端提供基本的数据接口服务
  2. CMS:为内容运营编辑提供管理数据,管理爬虫的平台
  3. 爬虫系统:完成爬取任务,包括视频网站爬取以及 BT 站点爬取
  4. P2P 下载器:接受爬虫系统发送过来的下载任务,并由监控模块监控 P2P 下载任务的状态
  5. 截图任务模块:接受爬虫系统发送过来的截图任务,进行截图,检测时长等视频信息并更新数据库
  6. 视频检测服务:提供互联网主流视频网站的视频地址解析服务。

三、改进计划:

  1. 目前的任务队列都是临时放在了 MongoDB 里面,采用轮询方式,最高效的方式应该还是使用 Redis 的阻塞队列之类的。
  2. 视频检测服务的效率严重依赖于第三方视频网站的响应速度,并且没有 cache,是其压力还是很大的。计划增加 cache 层,并且针对三方网站不同的防盗链特点制定不同的 cache 策略
  3. 多个下载服务的存储系统仍采用简单的磁盘存储,未来量增加以后不可用。需要使用分布式存储系统。
  4. Web 下载服务器为单台机器没有负载均衡,需要配合分布式存储系统和 CDN 进行。