Loading...

    AD: 猛买 | 快递查询 | Jobsdigg | 很棒的男装店

又拍云实战

可任意转载,但必须在醒目位置以超链接形式标明文章原始出处和作者信息
原文地址:http://www.blogkid.net/archives/2782.html

今年秋天,我加入猛买之后,遇到的第一个挑战就是图片托管。当时,网站流量快速增长,原有服务器几次增加带宽依然无法满足需求,流量常常跑满。现在回头总结一下,像我们这样的小公司,自己维护静态资源服务器大致有这些不爽:

  • 峰值带宽决定大部分成本
    如果峰值带宽在20Mb,那就得买20Mb,哪怕在凌晨只有几百Kb。
  • 运维的成本不可忽视
    除了买带宽,还得时时处处留意服务器运行情况、网卡流量、安全状况等,也需要持续投入。
  • 单机达不到CDN的功效
    虽然我们用的机房速度和稳定性都不错,但毕竟是单机,无法保证全国各地的访问速度。
后来,我通过@Fenng联络到了@gofeeling和又拍,正赶上又拍云处在最后测试阶段,我们成了又拍云第一批用户。又拍云(以下简称为UpYun)恰好为我们解决了上面的问题。
  • 按需付费,带宽需求再高,也只需要按流量付费,据粗略计算成本低至原先三成;
  • 抛开运维负担,如不放心,配置几个URL监控即可;
  • CDN不再是问题,不同地区的用户都能享受到最好的访问速度。

在两个月的使用过程中,UpYun确实出现过2次不稳定的状况,但又拍同学们都很及时地解决了。正式上线后,稳定性极佳,到目前为止可用率高达100%。

这篇文章主要是从用户的角度谈谈UpYun的特点和使用技巧,让对UpYun感兴趣的朋友们更好地了解这个平台,可以加深了解,更好地使用它。UpYun目前提供的是文件存储+CDN的服务,可以认为是AWS的S3+CloudFront,但实际用起来,有些细节上的不同。

0、与众不同的Bucket

和一般云存储服务提供的Bucket不同,UpYun中的Bucket分为文件类和图片类。文件类Bucket可以存放任何文件;图片类Bucket仅能存放图片文件,妄图上传其他类型会被拒绝。每个Bucket都可以绑定多个域名。

1、文件增量同步

使用第三方服务托管静态资源,都会有文件同步的需求。那么,放在主服务器的文件,如何同步到UpYun呢?又拍官方提供了两种方式:FTP和API。API功能强大,但是需要做开发,目前还没人开发出类似s3cmd这样的工具;FTP命令功能有限,想用原生的几个命令辗转腾挪实现sync很费劲(不切实际地想,如果支持rsync就好了)。

我们在实际使用时,利用了lftp的mirror命令,通过FTP协议实现了文件增量同步。再配合crontab,就能做到定时增量同步了。这样既避免了投入精力围绕API做开发,又能达到rsync的效果。下面是一个脚本示例供参考:

#!/bin/bash

HOST=”v0.ftp.upyun.com”

USER=”username”

PASS=”password”

LCD=”localpath”

RCD=”remotepath”

lftp -c “open ftp://$HOST;

user $USER $PASS;

lcd $LCD;

cd $RCD;

mirror –reverse \

–delete \

–dereference \

–verbose \

–exclude-glob=*.php”

2、缩略图功能

肯德基说“We do chicken right”,又拍的兄弟们完全可以自豪地说“We do pictures right”。UpYun的图片类Bucket有一个高级功能,那就是自动生成指定尺寸缩略图。

在Web页面上如果出现大图小用,不仅浪费流量,也会导致用户浏览器缩小图片从而影响前端性能(小图大用的情况就不用说了吧)。这时,UpYun的缩略图功能就派上用场了。

设置完成后,只要上传一张原图,UpYun可以按需生成多张不同尺寸的缩略图(如果没有请求是不会生成的,这样可以节约空间)。

下面是3个不同尺寸的缩略图:

  • 150px宽
  • 200px宽
  • 310px宽

要拥有这些缩略图,只需要上传一张原图:

又拍云可通过不同的URL得到不同尺寸的缩略图(感兴趣的话可以看看上面几幅图的地址)。是不是有点像淘宝的图片服务器?缩略图功能依然是按照使用的空间和产生流量收费,无额外费用。

3、数据备份

很多公司需要备份各类数据,这种需求也可以利用UpYun的文件Bucket来满足。当然,首先要将其设为私有,从而使外部无法访问。如图

设为禁止外链后,这个Bucket就可以用来安全地存放数据备份了。需注意目前对单个文件有最大100MB的限制。

除以上功能外,UpYun还提供了直观的流量统计图表,如图:

后台还有很多其他功能,就不一一截图了。

CDN也很赞,在国内不同位置获得的IP也不同,而且速度都不错。如图:

看完这些是不是心动了?产品给力,服务更没的说。快到UpYun申请试用吧。

最后,打个广告。

猛买的技术团队期待靠谱研发工程师加盟;

公司里全是年轻人,气氛活泼,更兼业务稳健,从成立之初就一直盈利

技术团队氛围宽松,不打卡+弹性工作制那是必须的;

钱和期权都管够,但我们不拿创业忽悠人,更希望每个人都能茁壮成长。

如果正在看这篇文章的你,热爱技术,喜欢研究新鲜玩意儿,正在找工作或是打算换工作,请联系我:zhanglei909#gmail.com。

P.S. 也欢迎实习;用Gmail和Twitter都有加分滴。

16 Responses to “又拍云实战”


  1. 唔,话说upyun我也有申请的说,客服还特地打了个电话过来确认身份呢……
    只是觉得对我来说真的不太实用,要收费我还不如继续用我的狗爹呢…
    ~~
    话说猛买的实习主要干嘛的?

  2. @怡红公子
    其实,实习和非实习在我来看没啥区别

  3. 3Ocer

    不错 实用

  4. 4wps2000

    猛买咋一致打不开?

  5. @wps2000
    昨晚应该是有短时间的故障,这会儿已经好了

  6. 6zhangweibo

    现在实用的是dz的附件上传,要是能增加shopex的图片上传功能就好了

  7. 你莫不是又跳槽了?速度有点快哇。

  8. 这个服务听说过,但一直没有用,总感觉国产 免费的东西不靠谱.

  9. 又拍的空间也可以放网址站吧?

  10. 又拍云相当不错,我也试用中~~

  11. “数据备份”那段仿佛不太对吧. “禁止外链”应该是别人的网页不能引用, 但外人还是可以访问的, 并不适合用来做数据备份.

  12. 额, 仿佛是我自己理解错了…

  1. [...] 参考:又拍云实战 [...]

  2. [...] 阅读: 又拍云实战 [...]

  3. [...] 正文 上周看了磊哥的文章 又拍云实战 http://www.blogkid.net/archives/2782.html 后很有收获就觉得去试试又拍云存储的服务http://www.upyun.com/,就去注册然后申请试用了。 本次upyun.com的认证方式很让我意外,竟然是客服打电话过来确认,这点服务感觉还是挺好的,从这里感觉还是蛮重视用户的。特别要说的是,今天是星期天我又在这里宣传upyun.com的服务,就和同事说了下,结果他去注册了,竟然在半小时后就接到了客服人员的电话了,感觉这个确认还是很及时的,体验很好,这点感觉还是很不错的。 试用就开始吧,为什么要试用又拍云存储服务呢?这点磊哥的文章中就已经说的很清楚了,这里我做归纳补充下: 1,图片服务器的托管及运维费用挺高的,而且峰值带宽觉得了大部分成本,且运维的软硬成本增大 2,单机达不到CDN功效,需要CDN支持的话,花费就更大了 3,图片的处理及图片的缓存,需要配置nginx的静态缓存图片,需要做系统设计扩展图片类的保存图片及缩略图功能 4,图片的备份,对于图片的备份是个问题需要用rsync同步到备份机器,添加了运维成本和开发成本 [...]

  4. [...] 之所以更便宜,主要有两个原因:第一,如果峰值带宽在 20Mb,那就得买 20Mb,哪怕在凌晨只有几百 Kb。第二,CDN 是按每月的相对高点收取带宽费用的,这样哪怕你 25 天只有 10M,但是有 5 天你跑到了 100M,你就得付 100M 的费用。使用又拍云存储就不存在这个问题,你在这一分钟用的是多少就付多少钱,不必多付。张磊在博客中关于成本的叙说是:“粗略计算成本低至原先三成。” [...]

Leave a Reply