Linux中国采用“七牛”云存储支撑图片访问

2013-11-28 15:23


由于近来Linux中国(http://linux.cn)的访问量进一步的攀升,原来的服务器的处理能力和带宽已经不敷使用了。

虽然我们也做了一些相应的对策,比如限制图片盗链、控制恶意爬虫、限制搜索引擎抓取频率等方法,但是总是治标不治本,而且随着访问量的再次提高,限制访问也不能从根本上解决问题。

根据我们的分析,目前对带宽和请求方面的占用,主要来源于图片的访问。仔细考虑之后,我们决定寻找一个可靠、速度快、部署方便的图床来存储图片。

虽然网上有各种免费的网盘,比如dropbox、百度云盘等,甚至也有非正规的方法可以用它们来做图床,但是一方面,这些非许可的图床说不定哪天就会被取消,而且这种网盘本身的产品形态也不是很适合用于图床。

经过一番对比和沟通,我们最终选定了七牛云存储(http://www.qiniu.com/)作为图床。和七牛方面经过几次沟通之后,由于七牛对开源事业的支持,可以为我们提供足够使用的免费使用额度!

下面说说本站在使用七牛云存储方面的一些感受:

1、       使用方便。

原本以为需要通过麻烦的方式将现有的图片传输到七牛,并且可能需要修改我们的“内容发布系统”来将新上传的图片通过接口传输过去;不过在读了七牛相关的帮助信息之后,发现根本不需要那么麻烦。

只需要设置一个DNS指向和源站设置,即可无缝的将图片访问接管到七牛的云存储上。这个过程中,只需要等待你的DNS指向更新即可,而且不会造成访问中断。基本上和使用CDN一样,事实上七牛的服务也是一种简化的CDN——但是对于广大的中小站点来说,CDN根本就是高不可攀的服务。

2、       速度很快。

原本服务器的图片访问受限于带宽和并发处理能力的影响,加之不能分布式应对各地不同的网络情况,所以用户体验较差。

 

从上图可以看出,红色框内的图片访问,其并发访问及其响应时间都很快,从而整个页面基本上“闪出”。

3、       节省资源。

自从迁移到七牛云存储后,再也不用担心图片访问的问题了。从下图可以看出来,在使用七牛云存储之前的带宽占用情况和访问量情况的骤变:

 

从上周开始使用,带宽占用降至不到原有1/3。

 

图片服务器的请求几近于无(只提供七牛的源站访问)。

之前我们为了避免百度爬虫对网站的压力,甚至忍痛将百度爬虫的抓取频率降低,造成了百度排名和索引量的下降,而用了七牛云存储之后,我们就很放心的将爬虫抓取频率调整为自动,让它以最高的频率来抓取。

4、       图片/媒体处理。

七牛居然自带图片的处理功能,可以完成水印(这是第一个想到的)、缩放、裁剪等功能,甚至支持用户的深度定制。

令人更加意外的是,也支持视频及视频处理能力,这样我以后再也不用将网站上的视频放到土豆了(哦?你说啥视频?那当然是普通视频啦。;=D )。

 

在使用中,我们也发现了一些易用性方面的不足,当然,这些不影响具体的使用,只是尽善尽美的考虑,比如:

  • 内容管理方面,不够直观,也不能按照资源管理器的方式在网站上浏览和管理文件。虽然也提供了命令行工具,但是不能要求每个用户都懂技术不是?虽然这很geek。
  • 访问统计方面,只能提供访问日志,而不是访问统计报告。缺少对数据的挖掘,比如各地访问速度的体现等。
  • 镜像抓取方面,有时候不能正确识别目录和文件,尤其是错误的链接到了一个图片目录而不是一个图片时。

当然,这些都不是大问题,甚至可以作为增值服务出现。

总之,得益于七牛云存储的支持,目前看起来Linux中国(http://linux.cn)的流量会进一步攀升,我有些略微担心使用量太大了——不过,从现在的情况看起来,即便为超出额度的流量付一些费用,我也觉得是一个值得的事情。

最后,推荐广大站长,如果你的小站需要一个高质量的图床,七牛是可以考虑的选择之一。