避免 DNS 解析
DNS 是域名系统,使用域名去访问会有几百毫秒的延迟,而且会有 DNS 劫持风险,这时候可以使用 IP 直接去访问,但是 IP 又不够灵活,当对应服务因为某些原因导致 IP 改变之后,使用 IP就访问不了了。所以使用 IP 访问需要增加动态更新的negligence,或者在 IP 访问失败后切换到域名访问的方式。
合并网络请求
对于网络请求应当尽量减少请求的接口,也就是一些不紧要数据可以在其他接口返回时一并返回,不用再添加新的接口。
预先获取数据
将原本在同一时间需要显示的数据,分开时间段来获取,可以避免网络请求集中在一次,起到节省电量的作用。
避免轮询
一般不建议在应用中使用轮询,能够使用推送来替换掉的尽量使用推送。避免使用 Thread.sleep()函数来循环等待,可以使用 AlarmManager来实现定时轮询。
优化重连机制
设置最大的重连次数,超过该次数停止重连。
离线缓存
可以考虑使用开源框架实现,OkHttp是个好选择
压缩数据大小
使用 gzip 或者更轻量级的 json 进行格式
CDN 的使用
CDN 全称是内容分发网络,它的思想是尽可能避网络上可能影响数据传输速度和稳定的环节,从而实现跟快、更稳定的数据传输。CDN 的加速可以环节电信可信网络延迟带来的影响。
网友评论