离线下载系统:云与智能AP的性能剖析
1. 系统概述
在当今数字化时代,离线下载服务变得越来越重要。目前有两类主要的离线下载系统备受关注,一类是基于云的离线下载系统,以旋风(Xuanfeng)为代表;另一类是智能AP系统,如HiWiFi、MiWiFi和Newifi。
1.1 旋风系统概述
旋风是中国主要的基于云的离线下载服务提供商,拥有超过3000万用户(包括少量海外用户)。用户可以通过PC客户端或网页门户访问该服务,由于PC客户端功能更全面,支持HTTP/FTP、BitTorrent/eMule等常见文件传输协议,因此是主要的访问方式。从商业模式来看,旋风是腾讯的增值服务,任何注册腾讯用户都可以免费使用。其主要竞争对手包括百度云盘(免费服务)和迅雷(每月收费约1.5美元)。
旋风云的系统架构主要由三个服务器集群和一个数据库组成:
- 预下载服务器:负责从互联网上预下载用户请求的文件。
- 存储服务器:用于存储缓存文件。
- 上传服务器:将缓存文件上传给用户。
- 数据库:维护用户和缓存文件的元数据信息。
目前,云存储总空间近2PB,分布在近500台通用服务器上,缓存约500万个文件。缓存文件采用LRU(最近最少使用)算法进行替换。
在协作缓存方面,旋风云以协作方式缓存所有用户请求的文件。每个文件通过其内容的MD5哈希码进行标识,便于不同用户之间的文件级去重。因此,绝大多数(89%)的离线下载请求可以立即通过缓存文件得到满足,无需消耗预下载带宽。为避免因高切片复杂性换取低(小于1%)的存储空间节省,旋风不采用块级去重。
当用户请求的文件在云缓存中找不到时,旋