最新消息:yaf表单扩展中新增加了浮点数、日期和集合的校验。php yaf框架扩展实践三——表单

移动开发中节省流量的5种方法

编程开发 1814浏览 0评论

现在用手机上网的人越来越多,手机的网络情况一般比较差,而且流量费用也比较昂贵。如果应用能节省流量,既能帮用户省钱又能带来良好的体验。下面分享自己想到的5种方法。

服务器开启gzip压缩

服务器端开始gzip压缩,这种方法即简单又实惠,虽然消耗了一些cpu资源,但是能节省大量的流量资源。纯文本压缩率一般能达到50%。

使用压缩的图片

现在的手机越来越高大上,用手机拍的照片通常都非常大。在读取的时候如果不是用缩略图,那流量费的。。

图片的存储建议可以使用一些现成的图片服务,通常都提供了很便捷的压缩方法。例如在图片地址后面加上个后缀就可以取到相应的图片缩略图。目前国内感觉比较好的有七牛和又拍云,都提供这种支持。

只是使用缩略图的时候,需要找到平衡点,压缩太大用户体验就差了。

客户端缓存图片

即便使用了压缩图片的方法,但是图片还是流量中最大的杀手。如果能把图片保存到手机本地,那么就可以节省很多流量。

具体可以根据图片的url进行hash作为唯一标识符,如果url一样就可以认为图片是同样一张。这种方法要求图片的存储有一个图片url不会重复的规则。比如:/年/月/文件MD5.jpg。

warning:不要让客服人员通过ftp手动上传。

客户端缓存接口数据

图片一旦上传就可以认为是不变的,直接在本地缓存就OK了,压根不用考虑更新问题。但是接口数据会实时发现变化,既要考虑缓存又要考虑更新问题。

具体可以在服务端返回数据的时候,客户端对接受到的数据进行hash并记录对应关系,再次请求相同接口的时候传递该hash值,服务端在返回数据的时候也进行hash计算,如果两个hash一样就返回304状态,否则才传回新数据。

只取需要的数据

服务端的接口一般会返回较多的数据,客户端在调用的时候要指明需要哪些数据。

具体可以在请求接口的时候传递fields表明需要获取的数据,服务端根据fields返回相应的数据就可以了。例如只需要用户名称和年龄:fileds=name,age

目前就想到上面的5种方法,欢迎补充。

转载请注明:快乐编程 » 移动开发中节省流量的5种方法

发表我的评论
取消评论

表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址