阿里笔试题之Android网络优化
2015-07-30 22:07
429 查看
记得这是阿里校招笔试的一道问答题
答案是小伙伴们之后一起拼出来的,不乏有些飘忽的东西,需要的朋友可以做个参考(具体细节可以自行百度),欢迎提出更好的建议!
在客户端方面:
1.减少网络请求的数量,能够合并的网络请求尽量合并,尽量在一次查询中完成多个零散数据的查询
2.为网络数据做本地缓存处理
3.设置超时时间,数据压缩传送,比如从服务器端获取列表数据,如果可以最好是能将服务器端的流压缩一下,接收压缩流,这样速度会快点,而且省流量。
3.多线程处理,不要死等网络操作的结果,把耗时工作及计算放在子线程中
4.客户端请求数据尽量精简,需要哪些数据请求哪些数据,拉取数据分页查询、使用时间戳、lastId等查询,避免一次获取很多不需要展示的数据
5.对单次请求的数据进行压缩,如Gzip进行http数据通信的压缩,数值上连续的数据(如经纬度坐标序列)可以传递差值
6.对于资源文件,如图片,进行多个版本的保存和请求,大图小图分别异步加载
7.响应要及时,尽量给出友好的提示,提示用户等待,使用ProgressBar或者ProgressDialog,别让用户感觉程序“卡死”
在前端方面:
1:减少http请求,采用推送机制
2:资源的合并压缩处理,CSS Sprites 合并CSS图片,Inline Images 使用data: URL scheme的方式将图片嵌入到页面或CSS中
3:脚本底置
4:使用浏览器缓存。
5:在首次载入页面时加载html,之后再加载js。
6:使用HTML5和CSS3.0简化页面
在服务端方面:
1.尽量做好数据库设计,从设计上考虑减少网络请求次数
业务设计优化:
1:一切基于云配置。(重要的是云配置参数)
2:采用组件化设计,开发,动态加载
3:网络通信模块封装,返回数据统一处理(JSON-Mode)
答案是小伙伴们之后一起拼出来的,不乏有些飘忽的东西,需要的朋友可以做个参考(具体细节可以自行百度),欢迎提出更好的建议!
在客户端方面:
1.减少网络请求的数量,能够合并的网络请求尽量合并,尽量在一次查询中完成多个零散数据的查询
2.为网络数据做本地缓存处理
3.设置超时时间,数据压缩传送,比如从服务器端获取列表数据,如果可以最好是能将服务器端的流压缩一下,接收压缩流,这样速度会快点,而且省流量。
3.多线程处理,不要死等网络操作的结果,把耗时工作及计算放在子线程中
4.客户端请求数据尽量精简,需要哪些数据请求哪些数据,拉取数据分页查询、使用时间戳、lastId等查询,避免一次获取很多不需要展示的数据
5.对单次请求的数据进行压缩,如Gzip进行http数据通信的压缩,数值上连续的数据(如经纬度坐标序列)可以传递差值
6.对于资源文件,如图片,进行多个版本的保存和请求,大图小图分别异步加载
7.响应要及时,尽量给出友好的提示,提示用户等待,使用ProgressBar或者ProgressDialog,别让用户感觉程序“卡死”
在前端方面:
1:减少http请求,采用推送机制
2:资源的合并压缩处理,CSS Sprites 合并CSS图片,Inline Images 使用data: URL scheme的方式将图片嵌入到页面或CSS中
3:脚本底置
4:使用浏览器缓存。
5:在首次载入页面时加载html,之后再加载js。
6:使用HTML5和CSS3.0简化页面
在服务端方面:
1.尽量做好数据库设计,从设计上考虑减少网络请求次数
业务设计优化:
1:一切基于云配置。(重要的是云配置参数)
2:采用组件化设计,开发,动态加载
3:网络通信模块封装,返回数据统一处理(JSON-Mode)
相关文章推荐
- OGG-01031 由于网络中断导致datapump进程ABENDED的恢复方法
- 黑马程序员——网络编程
- 来谈谈网络安全,关于Session冒名顶替和cookie防篡改的问题
- Android网络传输中必用的两个加密算法:MD5 和 RSA
- Unix网络编程-----阅读笔记(1)
- Android5.0以上系统的移动网络开关
- C++基于TCP/IP简单的客户端、服务器通信程序实例
- RTP 与RTCP 解释. 含同步时间戳
- dotNet使用HttpWebRequest模拟浏览器
- 云计算和大数据时代网络技术揭秘(十九)万兆革命 (完)
- 归并排序(转载http://www.cnblogs.com/jillzhang/archive/2007/09/16/894936.html)
- 本学习笔记TCP/IP传输协议
- 云计算和大数据时代网络技术揭秘(十八)刀片服务器的网络
- TCP/IP四层结构
- HTTP学习要点(三)
- Http访问网络(AsyncTask 异步加载和使用HttpURLConnection)
- HDU 4275 Color the Tree 树的Hash 2012年长春网络赛I题
- http get请求获取服务器返回的应答数据
- select用法详解 http://blog.chinaunix.net/uid-23373524-id-2426940.html
- VS2013 编译libevent 并且使用!