热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

前端【学习心得】移动端性能提高1

到了大年初四基本上该拜的年都拜完了,今天天气格外好,阳光明媚,有时候觉得光是简单的晒晒太阳就是幸福,很希望能多多静下心来仔细去思考,然后再去学习。好了不废话了,今天想分享一下自己再

    到了大年初四基本上该拜的年都拜完了,今天天气格外好,阳光明媚,有时候觉得光是简单的晒晒太阳就是幸福,很希望能多多静下心来仔细去思考,然后再去学习。好了不废话了,今天想分享一下自己再前端移动端部分积攒摸索的知识。

    首先向大家介绍一本书《HTML5触摸界面设计与开发》,这本书并不厚,但讲的东西都是干货,十分受用,我今要分享的也是来自于此书中。

    移动端的重要性不言自明,相比于原生的app,移动web端的最大优势就是开发速率很高,并且对于那些内容型为主的应用其实并不需要特别高的性能要求,另外web移动端可以结合类似于phonegap这样的混合应用框架构建混合性应用,这对于我们web开发人员来讲无疑是个很值得研究的领域。

    相比于pc端的web应用,移动端对性能的要求更甚,因为毕竟小小的手机运算能力还是比不上pc的,这里我就先从性能方面更大家说说。

    先看看浏览器如何加载界面的:

    1 解析域名

    用户输入的域名经过dns服务器解析后变为Ip,然后通过ip访问应用,为了减少Dns服务器上的负载,Dns的查找机制会被浏览器,设备及设备和服务器之间的路由器和代理服务器缓存。

    2 发起请求

    浏览器拿到Ip后向Ip地址的主机发起tcp连接,然后发送请求,请求中包含网址,浏览器信息,浏览器能接受的数据类型(编码和语言),以及相关COOKIE包括域和路径的COOKIE

    3下载响应

    浏览器开始下载响应,随着响应到达,浏览器解析HTML,并识别更多资源。然后浏览器开始获得这些资源。

    4渲染界面

    最后浏览器会尽快渲染页面。如果页面中包含了css或脚本文件,浏览器会等到这些文件加载和解析完再渲染。

    由此可以总结出页面加载缓慢的几个原因:

    http连接总数。

    总字节数。

    等待时的渲染阻塞。

    延迟。

    缓存能力差。

 早些的时候我分享了一篇前端工具,chrome浏览器,可以通过使用chrome的时间线插件查看响应的时间。方法是审查元素->network.

    然后我们可以针对这些原因一一解决,

    http请求数太多我们可以合并那些资源文件,比如css,js,以及Image,这些合并的工作可以使用grunt,考拉等来完成。

    总字节数,同理我们压缩相关的资源文件即可。

    等待时的渲染阻塞,就是说必须等待js完成后才能渲染界面,那么我们就把js的依赖放到页尾,当然这并不是绝对的,因为有的时候必须把相关js放到前面。

    网络延迟,这个解决的办法就是提高自己服务器的性能,比如增大带宽,使用内容分发网络cdn等。

    缓存能力差,针对缓存问题我会再明天单独跟大家分享一下。

    另外谷歌也曾经针对界面性能优化发表过相关文章,WSLOW是雅虎卓越性能团队在2007年开发的一个工具,他会通过检测你的网站与最佳实践方案之间的差别来给出你最佳优化的建议。developer.yahoo.com/yslow,这个是相关网站,有兴趣的同学可以自己去研究下。

前端-【学习心得】-移动端性能提高1


推荐阅读
  • 一句话解决高并发的核心原则
    本文介绍了解决高并发的核心原则,即将用户访问请求尽量往前推,避免访问CDN、静态服务器、动态服务器、数据库和存储,从而实现高性能、高并发、高可扩展的网站架构。同时提到了Google的成功案例,以及适用于千万级别PV站和亿级PV网站的架构层次。 ... [详细]
  • 本文介绍了OkHttp3的基本使用和特性,包括支持HTTP/2、连接池、GZIP压缩、缓存等功能。同时还提到了OkHttp3的适用平台和源码阅读计划。文章还介绍了OkHttp3的请求/响应API的设计和使用方式,包括阻塞式的同步请求和带回调的异步请求。 ... [详细]
  • 基于PgpoolII的PostgreSQL集群安装与配置教程
    本文介绍了基于PgpoolII的PostgreSQL集群的安装与配置教程。Pgpool-II是一个位于PostgreSQL服务器和PostgreSQL数据库客户端之间的中间件,提供了连接池、复制、负载均衡、缓存、看门狗、限制链接等功能,可以用于搭建高可用的PostgreSQL集群。文章详细介绍了通过yum安装Pgpool-II的步骤,并提供了相关的官方参考地址。 ... [详细]
  • 本文介绍了Web学习历程记录中关于Tomcat的基本概念和配置。首先解释了Web静态Web资源和动态Web资源的概念,以及C/S架构和B/S架构的区别。然后介绍了常见的Web服务器,包括Weblogic、WebSphere和Tomcat。接着详细讲解了Tomcat的虚拟主机、web应用和虚拟路径映射的概念和配置过程。最后简要介绍了http协议的作用。本文内容详实,适合初学者了解Tomcat的基础知识。 ... [详细]
  • 开发笔记:计网局域网:NAT 是如何工作的?
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了计网-局域网:NAT是如何工作的?相关的知识,希望对你有一定的参考价值。 ... [详细]
  • 单页面应用 VS 多页面应用的区别和适用场景
    本文主要介绍了单页面应用(SPA)和多页面应用(MPA)的区别和适用场景。单页面应用只有一个主页面,所有内容都包含在主页面中,页面切换快但需要做相关的调优;多页面应用有多个独立的页面,每个页面都要加载相关资源,页面切换慢但适用于对SEO要求较高的应用。文章还提到了两者在资源加载、过渡动画、路由模式和数据传递方面的差异。 ... [详细]
  • 前言:关于跨域CORS1.没有跨域时,ajax默认是带cookie的2.跨域时,两种解决方案:1)服务器端在filter中配置详情:http:blog.csdn.netwzl002 ... [详细]
  • 这是原文链接:sendingformdata许多情况下,我们使用表单发送数据到服务器。服务器处理数据并返回响应给用户。这看起来很简单,但是 ... [详细]
  • [译]技术公司十年经验的职场生涯回顾
    本文是一位在技术公司工作十年的职场人士对自己职业生涯的总结回顾。她的职业规划与众不同,令人深思又有趣。其中涉及到的内容有机器学习、创新创业以及引用了女性主义者在TED演讲中的部分讲义。文章表达了对职业生涯的愿望和希望,认为人类有能力不断改善自己。 ... [详细]
  • t-io 2.0.0发布-法网天眼第一版的回顾和更新说明
    本文回顾了t-io 1.x版本的工程结构和性能数据,并介绍了t-io在码云上的成绩和用户反馈。同时,还提到了@openSeLi同学发布的t-io 30W长连接并发压力测试报告。最后,详细介绍了t-io 2.0.0版本的更新内容,包括更简洁的使用方式和内置的httpsession功能。 ... [详细]
  • 在重复造轮子的情况下用ProxyServlet反向代理来减少工作量
    像不少公司内部不同团队都会自己研发自己工具产品,当各个产品逐渐成熟,到达了一定的发展瓶颈,同时每个产品都有着自己的入口,用户 ... [详细]
  • 本文介绍了Redis中RDB文件和AOF文件的保存和还原机制。RDB文件用于保存和还原Redis服务器所有数据库中的键值对数据,SAVE命令和BGSAVE命令分别用于阻塞服务器和由子进程执行保存操作。同时执行SAVE命令和BGSAVE命令,以及同时执行两个BGSAVE命令都会产生竞争条件。服务器会保存所有用save选项设置的保存条件,当满足任意一个保存条件时,服务器会自动执行BGSAVE命令。此外,还介绍了RDB文件和AOF文件在操作方面的冲突以及同时执行大量磁盘写入操作的不良影响。 ... [详细]
  •   1、确认自己的线路是否连接正确腾达a9设置。 ... [详细]
  • POCOCLibraies属于功能广泛、轻量级别的开源框架库,它拥有媲美Boost库的功能以及较小的体积广泛应用在物联网平台、工业自动化等领域。POCOCLibrai ... [详细]
  • PHP输出缓冲控制Output Control系列函数详解【PHP】
    后端开发|php教程PHP,输出缓冲,Output,Control后端开发-php教程概述全景网页源码,vscode如何打开c,ubuntu强制解锁,sts启动tomcat慢,sq ... [详细]
author-avatar
港1009
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有