程序员都有哪些网络性能优化方法?

如题所述

降低用户跳出率的方法有很多,对于软件开发程序员来说,代码的优化和网络优化都是很有效的方法。今天,回龙观IT培训就从以下几个方面来了解一下,网络优化的具体操作内容。



1Gzip压缩


HTTP协议上的Gzip编码是一种用来改进WEB应用程序性能的技术,用来减少传输数据量大小,减少传输数据量大小有两个明显的好处:


可以减少流量消耗;


可以减少传输的时间。


2IP直连与HttpDns;


DNS解析的失败率占联网失败中很大一种,而且次域名解析一般需要几百毫秒。针对此,我们可以不用域名,才用IP直连省去DNS解析过程,节省这部分时间。


另外熟悉阿里云的小伙伴肯定知道HttpDns:HttpDNS基于Http协议的域名解析,替代了基于DNS协议向运营商LocalDNS发起解析请求的传统方式,可以避免LocalDNS造成的域名劫持和跨网访问问题,解决域名解析异常带来的困扰。


3图片处理


3.1图片下载


使用WebP格式;同样的照片,采用WebP格式可大幅节省流量,相对于JPG格式的图片,流量能节省将近25%到35%;相对于PNG格式的图片,流量可以节省将近80%。重要的是使用WebP之后图片质量也没有改变。


使用缩略图;App中需要加载的图片按需加载,列表中的图片根据需要的尺寸加载合适的缩略图即可,只有用户查看大图的时候才去加载原图。不仅节省流量,同时也能节省内存!之前使用某公司的图片存储服务在原图链接之后拼接宽高参数,根据参数的不同返回相应的图片。


3.2图片上传


图片(文件)的上传失败率比较高,不仅仅因为大文件,同时带宽、时延、稳定性等因素在此场景下的影响也更加明显;


避免整文件传输,采用分片传输;


根据网络类型以及传输过程中的变化动态的修改分片大小;


每个分片失败重传的机会。


备注:图片上传是一项看似简单、共性很多但实际上复杂、需要细分的工作。移动互联网的场景和有线的场景是有很多区别的,例如移动网络的质量/带宽经常会发生“跳变”,但有线网络却是“渐变”。


4协议层的优化


使用新的协议,Http协议有多个版本:0.9、1.0、1.1、2等。新版本的协议经过再次的优化,例如:


Http1.1版本引入了“持久连接”,多个请求被复用,无需重建TCP连接,而TCP连接在移动互联网的场景下成本很高,节省了时间与资源;


Http2引入了“多工”、头信息压缩、服务器推送等特性。


新的版本不仅可以节省资源,同样可以减少流量;我对Http2并没有实际接入经验,此处仅从原理进行分析。


温馨提示:答案为网友推荐,仅供参考
相似回答