8.app后端和web后端的区别

【转载】做者曾健生,公众号IDappbackendweb

               比目科技 Bmob后端云json

 

  不少从web后端转到app后端的小伙伴常常很茫然,不知道这二者之间有啥区别。本文经过例子,分析web后端和app后端的区别,使各位更好地把握app后端的架构。后端

  

(1)app后端要慎重考虑网络传输的流量,主要是api设计,图片处理上api

  

  现阶段,手机上网的资费仍是要按照流量算的,通常的3G用户,每月的流量几百M,4G用户,每月的流量也就几G。服务器

  

  若是不考虑网络传输的流量,一张图片就占了几百K,流量用得飞快的。网络

  

  在前面的文章《7appapp后端的通信》中提到,api的返回结果通常是json格式,使用json格式的一个重要缘由是,一样的内容,用json格式更省流量。架构

  

  app下载的图片也同样,默认是让app下载通过压缩处理的图片(通常是几十K如下),当用户须要查看原图时,才让用户下载原图。app

  

(2)移动手机弱网络环境,稳定性,到达率spa

  

  移动手机由于移动的特性,特别是在高速移动的时候,3G信号是时有时无。设计

  

  所以,后端发给app的信息,是没法保证必定到达app的,极有可能当发送的时候app是有3G信号的,但发送的过程当中,3G信号就没了,这样消息就没了。

  

  针对这种状况,须要作app端的信号的确认。

  

  例如,推送系统中,app要保存接收到的消息编号。

  

  服务端发送了编号为1,2,3这3条推送给appapp端记录下来的消息编号只有1,2,那就意味着编号为3的消息丢失了,可是推送服务器是认为编号为3的消息已经推送成功的。

  

  app每隔一段时间,询问一下服务器已经发送了哪几条消息,经过比对消息编号,若是有遗漏的,那就要求服务器再发送一次。

  

  经过这种策略,就能在很大程度上保证信息的完整性。

  

(3)手机电量有限

  

  普通的手机,充满电池能用一天左右,若是是在app端作大量的网络请求和运算,那么手机的电是消耗得很快的。

  

  可是,若是全部的运算都集中在服务端,也会增长了服务器的负担。

  

  这二者之间的平衡,须要在项目中仔细斟酌。

相关文章
相关标签/搜索