文档章节

云存储应用场景全总结 –App、HTML5、Web 应用篇

七牛云
 七牛云
发布于 2015/01/23 10:47
字数 2056
阅读 1251
收藏 10

[前言]

七牛目前已服务超过15万家企业和开发者用户,这些用户的应用场景也各有不同,推出这个系列的文章,希望通过对这些场景的全面解析,可以帮助开发者们减少在云服务使用过程中的弯路。

前两期我们重点说了:

云存储应用场景全总结 – 音视频篇

云存储应用场景全总结 –图片应用篇

今天,我们要介绍的是App分发、HTML5以及Web等应用场景。


一、HTML5 类应用

利用微信朋友圈进行传播的HTML5小游戏正逐渐被行业重视,且将PC端的经典产品改编成H5游戏也或将成为一种趋势。似乎在微信内此路仍可成型——开发多款不同类型的小游戏,利用话题性和病毒性进行传播聚集在自己的平台,利用各种渠道进行传播,将用户导向自己。

而七牛平台也在过去一年里有幸见证了这一类应用的崛起,并且承载了很多此类的应用的云服务。据我们发现,HTML5这类应用对云服务比较关注的有两点:

1、HTML5应用中的图片资源、htmlcss资源在移动端的访问速度效果如何

七牛CDN对移动、联通、电信这些主要运营商的网络都有广泛的节点覆盖,访问速度通过17ce、阿里测、奇云测,都可以对各地区访问资源的速度进行测试,同时七牛除了提供HTTP域名,还提供了HTTPS域名,可以给需要SSL通道访问的Web应用提供一条优秀的链路选择。

2、如果应用中的资源发生更新,多久可以访问到最新的资源

由于七牛的CDN加速依赖CDN节点上的缓存,所以资源在七牛的空间上更新后,如果直接访问原有资源的URL,并不能马上获取的最新的文件,但是可以通过URL+?v=20150115这样的形式获取到最新的资源,所以建议在资源更新之后带上问号参数对资源进行访问。

七牛平台上已经积累了很多专注于HTML5的开发者,其中不乏已经在该圈颇具之名度的,比如MAKA,未来应用、醋溜新媒体等。以醋溜新媒体为例,以前每次出现微信祈福的H5页面,流量会攀升至几千万,服务器的压力很大,接入七牛后的云存储服务后,UV在短时间内就平稳地达到了1.5亿,在用户体验方面有了显著的改善。


二、Web应用

这里指的Web应用主要指的是在网页端对七牛资源进行上传、处理、访问的应用,覆盖面也比较广,和之前的图片类、音视频类应用也有交集的部分,但是也有其特殊之处,一般来说会涉及下面几个方面。

1、网页客户端的上传是否有相应地工具能够减少开发量

通过网页客户端上传七牛,七牛官方提供了JavaScrpt的SDK,利用Plupload上传组件对客户端资源进行上传,当然上传时涉及安全机制的部分还得依赖服务端的程序,七牛也提供了丰富的服务端SDK供客户选择。工具方面,七牛也收集了一些为七牛定制的上传工具的插件,开发成本大大减少。

2、网页客户端的上传速度能否保证

 七牛针对客户端除了默认提供的上传加速服务,另外也提供了断点续上传的接口,来保证大文件上传的稳定性和高效性,具体实现细节在SDK中均有实现。

此外,七牛云存储还有一个独一无二的特性——支持用户将文件从客户端直传到云服务器中。

常见的云存储上传文件流程一般如下:

用户 =>应用服务器 =>云存储提供商

这样多了一次上传的流程,和本地存储相比,会相对慢一些。

而七牛提供了客户端自传的功能,流程可以改成:

用户 =>七牛 =>应用服务器

用户直接上传到七牛的服务器,通过DNS智能解析,七牛会选择到最近的最合适的ISP服务商节点,速度会比原先快很多,上传成功以后,七牛的服务器使用回调功能,只需要将非常少的数据(比如keypost回应用服务器,应用服务器进行保存即可。


三、App分发类应用

App分发的应用场景分两个方面,即上传和下载。而上传一般都是客户的服务端直接控制,所以用户关注的点主要在于下载。

1、下载速度能否保证,文件下载的完整性能否保证 

下载速度基本依赖于请求下载端的网络状况,七牛不会限制下载带宽,下载的完整性一定程度上也依赖下载端是否进行了完整的下载。如果出现App下载后安装失败,那么首先要做的是,测试在相同网络状况下不同设备的下载安装情况、以及不同网络状况下相同设备的安装情况。

2、App版本更新后,能否立即访问到最新的资源,能否预推新的资源

App这样的资源建议直接在文件的文件名中带上版本号,而不是更新资源后使用相同的文件名,因为不能避免会有部分CDN节点上存在旧资源的缓存。但是也可以通过七牛qboxrsctl/qrsctl 工具进行302的重定向设置,将相同URL重定向到不同的资源上。

3、iOS 7.1以上的企业级APP发布需要https链接,七牛是否提供。

只要成为七牛的标准用户,都可以直接在七牛的空间设置的域名设置中,创建一个https的链接,manifest.plist文件中,只要将URL设置为七牛提供的https的文件外链,即可轻松通过APP STORESSL证书审核。


[举例说明]客户案例之豌豆荚

豌豆荚就属于应用场景比较典型的App分发类应用,当然目前豌豆荚业务扩展到了壁纸、小说还有视频,这些项目和之前我们介绍的图片展示类、音视频播放类应用场景差不多。豌豆荚一般通过下面几个方面来使用七牛:

1、APK文件、图片、视频资源的上传,这个上传一般不是豌豆荚用户直传七牛,因为豌豆荚需要对用户的上传文件进行一些审核,然后由豌豆荚的业务服务器对资源进行上传。同样,七牛不会限制上传的带宽,只要豌豆荚的机房出口带宽有多大,我们就能有多大的入口带宽。 

2、APK文件的下载同样也是通过七牛的CDN加速通道,加速效果可以任意下载一个豌豆荚的链接就能体会到,不过豌豆荚的文件名本身会带上版本号,所以新的版本发布不会存在访问文件仍然是旧文件的现象,这个也是七牛推荐的更新文件的方式。当然如果必须使用相同的文件名,那么就建议用3xx的重定向服务了。

七牛上的应用场景随着用户的增多也越来越丰富,我们还在继续挖掘有意思的场景,希望以不同的形式展现给开发者。

 

© 著作权归作者所有

共有 人打赏支持
七牛云
粉丝 39
博文 70
码字总数 154060
作品 0
浦东
给网页设计师的30个HTML5学习资源

早在几个星期前,Adobe就发布了Dreamweaver CS5 HTML5 Pack的预览版下载。众所周知,HTML5在互联网领域掀起了一场大论战,并让Adobe的日子很难熬。HTML5致力于为前端开发提供全面的标记语 言...

晨曦之光
2012/03/09
0
0
史无前例的 HTML5 资源参考指南

尽管 HTML5 规范在 2014 年之前不会有正式版本,很多设计师已经开始试水高级浏览器已经支持的部分 HTML5 功能。HTML5 为 Web 设计和应用开发打开了一扇全新的门,原生支持了以前只可能使用 ...

李长春
2012/03/02
0
1
HTML5、WebKit与移动应用开发

一、 前言 微软之所以能够在过去几十年间称霸IT业,主要是凭借一项无法超越的优势:Windows操作系统,目前快速发展的移动设备成为IT业关注的重点,有可能移动互联网应用将会是IT业下一个高速...

冯京宝
2012/05/30
0
0
扣丁学堂HTML5培训课程怎么样

  在如今,随着移动互联网技术的发展和进步,比如HTML5在移动互联端的应用,让更多人了解到它的丰富性趣味性便利性,但HTML5就包括这些么?扣丁学堂HTML5培训课程怎么样?零基础能学会么?...

扣丁学堂
06/01
0
0
基于HT for Web的Web SCADA工控移动应用

在电力、油田燃气、供水管网等工业自动化领域Web SCADA的概念已经提出了多年,早先年的Web SCADA前端技术大部分还是基于Flex、Silverlight甚至Applet这样的重客户端方案,在HTML5流行前VML和...

xhload3d
2015/03/18
0
2

没有更多内容

加载失败,请刷新页面

加载更多

sed命令扩展使用操作

打印某行到某行之间的内容 假若文件test.txt的内容是: ertfff**[abcfd]123324444[rty]**fgfgf 怎么能截取 [abcfd]123324444[rty] 这一部分出来呢? 操作命令: 知道开始行和结...

野雪球
14分钟前
0
0
JVM内存笔记

Hotspot JVM 中的 Java 线程与原生操作系统线程有直接的映射关系。当线程本地存储、缓 冲区分配、同步对象、栈、程序计数器等准备好以后,就会创建一个操作系统原生线程。 Java 线程结束,原...

凌渡
20分钟前
0
0
284. Peeking Iterator

Description Tag: Design Difficulties: Medium Given an Iterator class interface with methods: next() and hasNext(), design and implement a PeekingIterator that support the pee......

52iSilence7
22分钟前
0
0
防止快速重复点击的两种思维

防止重复执行的两种思维 场景 下单时,提交按钮,因为网络卡顿或者手快重复点击,导致重复提交订单; 微博,更新个人状态或发表评论时,快速多次点击[发送]按钮,导致相同的信息发送多次. 解决思路 ...

黄威
48分钟前
0
0
在windows环境下使用Virtualbox虚拟Debian系统来运行Docker

标题绕口。 我之前一直使用 Virtualbox 和 homestead 来运行我的 PHP 开发环境。最近决心开始尝试 DevOps,使得开发、部署容器化,来化解人为操作失误和环境不兼容等问题造成的各种损失。就打...

zgldh
50分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部