常用技巧输入URL后浏览器做了什么:1.DNS域名解析;2.建立TCP连接;3.发送HTTP请求;4、服务器处理请求;5、返回响应结果;6.关闭TCP连接;7、浏览器解析HTML;8.浏览器布局渲染;想法:尽量优化每一步。优化:DNS服务由主机自行配置,可以省去DNS查询的步骤。花钱增加带宽和后台优化sql语句的查询速度,这样可以更快的返回前台数据。重新使用连接,并将后端设置为保持活动状态。后台开启gzip代码压缩,浏览器会自动解压加载css再LoadJS,让用户先看到页面,再实现交互。延迟加载,先加载用户看到的第一个页面,再记录其他页面。预加载,比如看小说加载下一页提前http缓存css/js/图片,后台设置缓存时间,通过hash值判断需要更新的文件。Cache-control使用2个以上但不超过4个域名,因为域名限制了最大并发请求数(CDN域名)cookie-free,会将需要cookie请求的多个域名请求和不需要cookie请求的请求分开需要cookie,加快无cookie的请求速度。以下为转载内容:谈前端性能优化,我们应该谈什么背景?在整个前端学习生涯中,我们总能一次次听到“性能”和“体验”这两个词。前端性能优化不仅是前端工程师一直需要关注的实际问题,也是前端面试中经常被问到的一个点。面试官之所以爱问,是因为他们懒。仅仅通过问这个问题,就可以在一定程度上考察面试官的知识广度、知识深度、总结能力、表达能力,并可以顺着这个思路继续问其他问题。当突然问起性能这个问题时,大多数人都会突然一愣。总觉得有很多话要说,却又感觉杂乱无章,不知从何说起。想了想,慢慢想出了早年做面试题时看到的《雅虎性能优化N条军规》,挠头说七八句。面试官面无表情地问:“还有吗?”这一刻,他只好像海绵一样捏着脑袋,再滴出两三滴似是而非的油水。心里满是苦恼,抱怨自己记性不好。其实就算你全部背下来,一口气说几十个,面试官也未必会很满意。一个原因是项目太多没有主次,容易烦人,面试官记不住你说的是什么。二是这样回答显然给人一种死记硬背的感觉。(面试官真的很烂)我们想谈什么和回答绩效问题有两种思路。顺着这两个思路,不用太多记忆就可以很自然、“很有见地”地回答几十个甚至几十个优化方案。当然,前提是你之前实际使用过这些优化方案。思路一、从日常生活中遇到的前端性能场景出发,性能瓶颈主要出现在三种场景。开发中每次修改代码和打包都需要几分钟的时间。太慢了(在开发建设阶段)打开网站要等几十秒才能看到。页面太慢(资源加载和页面渲染阶段)。页面显示后,页面动画不流畅。滚动页面或拖放元素时,卡顿感严重,甚至可能出现页面崩溃(操作体验阶段)1.开发建设阶段(常见问题:如何让Webpackpack更快)并发:使用多-processpackingcache:打包时使用cachepackingvolumeKeepitsmall:缩小文件搜索范围,减少不必要的编译工作。二、资源加载阶段的核心思想是:传输量要小,距离要短,并行传输,资源复用,预加载。传输量要小。构建期间的HTML压缩。CSS压缩和构建期间的合并。JavaScript压缩和合并。构建过程中的图像压缩。使用SVG精灵或字体图标而不是图像图标。在服务器上启用Gzip并在传输前压缩数据。不必要的代码引入单页应用路由懒加载,减少首次加载资源量组件懒加载,减少首次加载资源量图像懒加载,减少首次加载资源量time距离要近静态资源部署到CDN,并行传输升级到HTTP2.0(常见问题:HTTP2.0相比HTTP1.x做了哪些升级?复用;二进制分帧;服务器推送;数据流优先级;headercompression)resourcereuseserverconfigurationstaticresourcesCache(常见问题:HTTP缓存策略?Cache-Control?keep-alive?304?ETag?)打包和复用Preloading浏览器在空闲时间偷偷预加载,
