IM应用中的优化


曾经做过IM应用中考虑过的一些关于应用优化的问题。


优化重心主要放在了电量优化和流量优化上:


电量优化

怎样测试耗电量(前台耗电、后台耗电)

1、专用设备

2、性能相关的app

3、自己动手去写电量消耗


电量优化

1、不要影响手机休眠

心跳包使用 alarm manager出发心跳包


2、尽量减少网络请求

数据缓存、本地存储,同步增量、一次发送多个请求


3、少使用GPS定位,网络定位优先


4、针对不同网络类型做优化

移动网络下载速度大于上传速度;2G一次发送数据包不要太大;3G4G一次发送多个更省电

上传buffer大小:2G 1024字节,3G 10k

下载buffer大小:2G 1024字节, 3G 30K


其他的优化可以参考官网



流量优化

怎样测试流量

uid=Process.myUid();

initRecvBytes=TrafficStats.GetUidRxBytes(uid);

initSendBytes=TrafficStats.GetUidTxBytes(uid);


流量优化

1、心跳

减小心跳包

减小发送频率

智能心跳,动态心跳时间


2、封包协议

自定义封包协议,减小包大小。


3、异常重连机制

动态重连机制


4、压缩

文件压缩

用到过的压缩算法:gzip



消息优化

每一个重要消息都要给服务端回执







  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值