在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
由于用户纷纷反应山坡网的打开速度比较慢,所以两天前我们决定把服务器从linode迁移到阿里云。 整个迁移过程非常平滑,基本上一个小时就完成了。而且阿里云的配套设施提供的也很不错,运行状态监控什么的都有。在此向大家推荐阿里云! 话说由于我们资金有限,就选择了ECS服务器中最低档的一款,512MB内存,2MB带宽。而山坡网上会有很多书籍封面图片,这导致了页面打开的速度并没有想象中提高的多,用户反应速度虽有提升,但不明显。 此时我想到了七牛云存储,虽说知道它已经几个月了,但始终没有正式开始用,总觉得我们挺穷的,云存储这类高端大气上档次的东西一时半会儿估计用不上。但还是抱着学习一下的心思打开它看了看。这一看我就乐疯了。 这……不敢相信啊!二话不说,立马决定把所有书籍封面图片都迁移到云端! 接着打开七牛的API文档看了一下,嗯,简单明了。10分钟后就照着动手了。 七牛的Go SDK提供了两种上传策略,上传内存数据或者上传文件。本来最佳的方式应该是直接上传内存数据,但考虑到服务器内存比较小,所以我选择了性能上次之的文件上传方式。 思路定下来之后就简单了,在文件下载完成之后,上传到云端,返回key值作为书籍封面的url保存到数据库。上传的函数如下:
接着就可以用“http://xxxxxx.qiniu.com/<key>”的方式访问图片资源了。 有经验的人此时应该想到一个问题,防盗链。对啊,就算每个月有100万次免费的GET请求,可以顶不住盗链哪! 七牛早就想到了,很简单,把存储空间设置成为私有的,然后使用如下函数生成访问链接。
这样就会在访问的url后面加上一个有时间限制的token。防盗链完成! 再接下来就处理一下历史数据,写个小程序把所有现有的书籍封面都上传到云端,同时更新数据库。 半小时之内,山坡网就搭上了云存储的快车,我和我的小伙伴们都惊呆了! 我这只是用了七牛提供的众多功能中最简单的,其实照这个思路,可以把站点上所有静态的资源都放到云端,仅让我们的服务器处理必要的动态内容。这样成本会大幅降低。 在此,我向所有网站的开发和运营者们推荐七牛云存储!靠谱! |
请发表评论