服务端的一些总结

1:APP服务器的设计其实和WEB来说,结构模式差不多,或许对APP服务端来说 页面的展示层换成了JSON数据格式等,

2:服务端需要统一数据传输格式,这种设计结果一般可以:

把一些特定的数据,可以作为日志记录 分析用户,等统计结果

HEAD中

{

  clientInfo:{

       pkg:“”,

       imei:“”,

       ...

    },

   userInfo{

扫描二维码关注公众号,回复: 592139 查看本文章

       ...

   }

  vfc:"" //验证部分

}

2:接口的设计 

服务端接口设计的原则是尽量能满足客户端的变化,如,客户端升级而某些功能不能用了,该怎么办呢、

所有设计接口要尽量能够包容变化

比如: 1.0版本的客户端支持做某些类型数据的列表,而2.0版本的客户端却不能支持1.0的某些类型数据的列表

如果按照 /**/list?ps&pn

到了2.0里 接口如果还是保持/mission/list?pn&ps的话,处理逻辑里 就需要更加vc版本号 而取不同的数据列表

如果是升级到3.0呢?4.0呢 

所以接口 可以这样 客户端的要什=么就返回什么

/**/list?supportType&ps&pn

客户端把需要的支持的类型传到服务器,该类型一般java中是枚举定义

接口的相同类型设计尽量覆盖多的数据,避免请求多次不需要的请求。

 总之,尽量把接口设计的更容纳。

2:表结构的设计

在用户量比较小的情况下,表的设计是看不出什么弱点来着,

特别是用户量比较大,对和用户id相关的表设计要注意

比如: 保存用户安装的应用这样需求的表

USER_ID,  RESOURCE_ID, PKGNAME...

用户量很大的话 这张表就被发达了n个安装应用*用户数

就很合理了,  把安装的应用表 独立出去

ID  PKGNAME ....

然后

USER_ID  PKG_MAPPING_ID

再后面 ,就要考虑分区,垂直水平分离, 集群... 

猜你喜欢

转载自iluoxuan.iteye.com/blog/1966470