Loading...

Tag Archive for '%e4%ba%91%e8%ae%a1%e7%ae%97'

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

又拍云实战

今年秋天,我加入猛买之后,遇到的第一个挑战就是图片托管。当时,网站流量快速增长,原有服务器几次增加带宽依然无法满足需求,流量常常跑满。现在回头总结一下,像我们这样的小公司,自己维护静态资源服务器大致有这些不爽: 峰值带宽决定大部分成本 如果峰值带宽在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可以按需生成多张不同尺寸的缩略图(如果没有请求是不会生成的,这样可以节约空间)。 [...]

试用RackspaceCloud

之前写过GoGrid体验,昨天又试用了一下另一家叫做RackspaceCloud的云计算平台,感觉要比GoGrid好使,于是写点儿使用心得。 Rackspace是一家老牌IDC,除了提供dedicated hosting、managed hosting以及web hosting之外还有一些其他业务。大名鼎鼎的VPS提供商SliceHost也属于Rackspace旗下(要比Linode贵点儿,但是使用的人也比较多)。Rackspace的云计算服务本来是一个独立品牌,叫做Mosso,后来可能经营得不好,或者牌子搞得不响亮,于是直接改名叫RackspaceCloud了。 不管是EC2,还是GoGrid或者RackspaceCloud,与Linode这样的VPS都有显著的区别,区别体现在: 云计算平台的服务可以按使用收费。比如服务器按照使用时间和in/out流量收费,粒度很细。VPS做不到这么精细的粒度,大多是按月收费。在收费上,不同平台的差别也很大。 云计算平台上的服务器没有“power off”的概念,运行着的服务器,只可以重启或干脆删除。那么,数据如何备份就成了一个问题。上文提到的3个平台,都提供了persistent storage,可以把数据存在那上面,不过在具体的实现上又有区别。 云计算平台往往还提供了CDN一类的服务,Amazon的AWS提供的更多,如SimpleDB之类的解决方案。而VPS所提供的,只是一台虚拟的独立服务器。当然,大部分时候对云计算的要求,不外乎云服务器和云存储。 云计算平台可以先使用后交钱,VPS是先交钱后用。 相比GoGrid,RackspaceCloud给我的感觉是,后台管理非常简洁,而且网站的速度也快(GoGrid的后台经常会很慢,而EC2,很多时候复杂得让人看不明白)。下图是RackspaceCloud的管理后台,左边的导航非常简洁。 可以添加一个Cloud Server,支持很多Linux发行版,如果把滚动条拉到最下面,还能看到最新的Ubuntu 9.10。 创建一个Cloud Server需要几分钟时间,完成后,会将root的密码发送到邮箱,可以通过ssh登录。 在单个Server的信息页面,也非常简洁。当然,我觉得可以做得更好,比如提供类似Linode的服务器各项指标的图表形式展示。 我选择的是最廉价的256M内存的服务器,每小时的费用为$0.015,大约人民币0.1元。我在上面跑一个爬虫程序,并把数据存到Linode服务器的数据库中。以前都是开在我自己的笔记本电脑上,不仅连国外服务器的速度慢,而且晚上机器吵得我睡不好。昨天在RackspaceCloud上开了一夜,早晨起来看,共消费$0.34。花不到3块钱,不仅睡了个好觉,而且爬虫工作的速度也比以前要快。 至于服务器的速度,我在Twitter上请推友帮忙测试了一下,从国内ping都在200多毫秒,没有丢包的情况,算是比较理想了。我懒得在上面搭Web服务器。如果感兴趣,可以从此处看到在全球各地ping此服务器的数据。 总体来说,RackspaceCloud的Cloud Server值得使用,Cloud Files我暂时还没测过。与EC2相比,RackspaceCloud提供的服务器档次比较多,EC2提供的最小的服务器都有1.7G内存。而与GoGrid相比,RackspaceCloud提供的服务器,不仅价格上比较有优势,而且在管理后台,也优于GoGrid。 当然,Amazon的AWS还是很牛气的,不仅有EC2,还有S3、SimpleDB这些玩意,近期还支持了MySQL。RackspaceCloud的产品线还显得单薄,流量费用也比其他两家要高。但对于一般的应用来说,还是够用了。感兴趣的朋友们,可以注册一个试试。 发表之前把我的使用报表截图一张,将近24个小时,费用为$0.63。 UPDATE: 在注册时候可以使用REF-YIYUE这个优惠码,据说第一个月的账单会有一定的优惠。

GoGrid体验

GoGrid是一个和Amazon EC2相似的云计算平台,近期注册就会赠送$50,用赠送的金额最长可以使用66天的GoGrid服务。所以我就注册体验了一下。 注册的过程就不细说了,需要有一张信用卡才能完成注册。之后登入到管理面板,如图所示: 左边是账单信息和可用IP的列表,右边就是我添加的服务器。感叹一下资本主义拿ip不当ip,我一注册就分配我10个,随便用。点中间的“ADD”就可以增加服务器,我增加了一台cloud storage server以及一台web/app server。控制面板的速度非常慢,操作时需要耐心。 服务器启动起来以后,可以用putty连上去(已经开始计费)。下图是我在putty上用wget下载文件的情景: 可以看到在服务器上下载时网速很快。不仅如此,从服务器单线程下载内容到本地,速度维持在100K/s(杭州电信);在北京的fire9测试时速度有140K/s,这样的速度我非常满意,用来提供国内用户访问应该没什么问题。 GoGrid还提供了开放API用来调节服务器数量,以及免费的load balancer、免费的10G存储空间、以及100% uptime保证,确实非常不错。但不足之处也很多,比如服务器启动后无法关闭,要停止计费只能把相应服务器删除;提供的服务器image还不够多;价格上比起ec2也丝毫没有优势。所以,GoGrid还任重道远。 作为总结,我认为GoGrid还不值得推荐。我已经决定买一台Linode,然后把国内服务器上的东西“搬回”国外。毕竟,一台linux服务器可以有更多折腾的余地。而如今这台托管在扬州电信的服务器4月到期,到时可以放在住处,玩Hadoop。