- 浏览: 531540 次
- 性别:
- 来自: 广州
文章分类
- 全部博客 (377)
- J2EE (61)
- ORACLE (36)
- JS (15)
- EXT (0)
- win7 (12)
- TOMCAT (10)
- game (1)
- ie (5)
- etc (8)
- ibatis (3)
- ORACLE 客户端 (1)
- bat (3)
- 健康 (127)
- baby (4)
- html (12)
- myeclipse (16)
- 射手 字幕默认下载 位置 (1)
- office (0)
- car (2)
- xxx (1)
- python简介 (1)
- FusionCharts (1)
- dorado (4)
- english (3)
- weblogic (3)
- request/servlet (3)
- wsdl (1)
- offie2010 visio2010 下载 (1)
- nexus5 (0)
- chrome (3)
- ssi (2)
- 安卓 (3)
- nexus ipad (1)
- mysql (4)
- json (3)
- struts (6)
- datagrid (1)
- highcharts (1)
- tools (2)
- tool (1)
- spring3 (1)
- jedit (1)
- java (4)
- windows (1)
- easyui (2)
- 液晶显示器色温 (1)
- mybatis (1)
- where (1)
- sublime (1)
- spring4 (3)
最新评论
-
spring_springmvc:
如何在java Web项目中开发WebService接口,地址 ...
java 调用WebService服务接口 -
chenzheng8975:
阅
人生三大陷阱 -
ygbb007:
直接OD就能破解的
myBase Desktop 6.0 破解方法 -
lanlansnss:
直接删除nyfedit.ini文件即可
myBase Desktop 6.0 破解方法 -
yunzhu:
LZ写博客不太注重排版啊,排版不行别人没法看的
PermGen space
原文:http://www.infoq.com/news/2012/11/Browser-Web-App-Performance;jsessionid=C6AB7AAC6E3E537B019B65E9C718B6A7
1. 快速响应网络请求。
避免重定向。排名前1000的网站中,63%使用了重定向。如果不执行重定向的话,页面速度可以提高10%。
避免Meta-refresh。世界上14%的URL使用了Meta-refresh。
尽可能通过CDN定位用户,使服务器响应时间最小化。
从不同的域下载资源,使并发连接的应用最大化。
复用连接。不要在响应请求时关闭连接。
确保页面加载不会因合作伙伴网站提供的数据而延迟。
了解耗时的网络组件,如重定向、缓存、DNS、请求和响应等。在IE 9和10中可以使用Navigation Timing API来测量浏览器花在每个操作上的时间。
2. 最小化下载的字节数。
加载页面时,要尽量减少下载的数据量。平均而言,每个页面要下载的数据量达777KB,其中有474KB的图片、128KB的脚本和84KB的Flash。
请求gzip压缩的内容。
将资源保存在本地的包中,比如为Windows商店应用生成的包资源索引(Package Resource Index)文件。这样当需要这些资源时就可以很容易地获取到。
使用HTML5 App Cache缓存动态资源。App Cache会只下载一次资源,从而避免多次网络行程。当应用的版本号发生变化时,它会自动重新下载相应资源。
尽量在响应中使用“Expires”字段来提供可缓存的内容。
通过设定请求的If-Modified-Since字段来使用条件请求。
缓存数据请求,如HTTP、XML和JSON等,因为大约95-96%的请求不会整天变化。虽然这个想法很合理,但实际缓存接收到的请求的网站所占比重还不到1%。
用大写将文件命名标准化。虽然服务器可能把Icon.jpg当作 icon.jpg,但是对于Web平台而言,它们是不同的资源,对应不同的网络请求。
3. 高效地组织标记。
对于IE而言,请使用最新的标记标准,因为它速度最快。IE 10也能识别早期的IE6-IE9标记风格,但是其速度不如新的标记风格。
特定的业务Web应用可能需要强制IE运行于传统模式,请使用HTTP头字段“X-UA-Compatible: IE=EmulateIE7”来代替HTML标签 ,这样速度会快一些。
为了平滑地渲染,样式表应该链接在页面顶部的<head>之中的<title>后面。
绝对不要在页面底部链接样式表。否则加载页面时可能会出现闪烁。
对于分层样式,不要使用“@import”,因为它是同步的,会阻塞CSS数据结构的创建和屏幕绘制。
避免样式的嵌入和内联,因为它会强制浏览器在HTML和CSS解析器之间进行上下文切换。
仅包含必要的样式。不要下载和解析用不到的样式。
仅在页面底部链接JavaScript。这可以确保脚本执行时图片和CSS等资源已经加载,无需等待,也避免了上下文切换。
不要在页面开头链接JavaScript。如果某些脚本必须在开始处加载的话,请使用“defer”属性。
不要内联JavaScript,这样可以避免上下文切换。
使用“async”属性加载JavaScript,这样整个脚本就可以异步加载和执行。
避免冗余代码。世界上52%的网页包含100行甚至更多的冗余代码,比如一个JavaScript文件被链接了两次。
将一个JS框架标准化,无论是jQuery,Dojo,Prototype.js还是其他框架。浏览器没有必要加载多个功能基本相同的框架。
不要加载FB和Twitter等网站的脚本,只是看起来很酷而已,它们会争用资源。
4. 优化多媒体资源的使用。
图片是最常用的资源,每个页面平均会下载58张图片。
尽量避免下载太多图片,根据页面加载时间将图片最大数量控制在20-30之间。
使用Image Sprites将多个图片组合成一个。该技术可以减少网络连接数,也会减少下载的字节数并节省GPU处理周期。
手动创建Image Sprites,因为工具创建的可能会留下较大的空洞,这会加大需要下载的数据量,也需要更多的GPU 处理周期。
使用PNG格式的图片,该格式在下载大小、解码时间、兼容性和压缩率之间实现了完美的折中。JPEG格式可以用于照片。
使用原始的图像分辨率,这样可以避免下载不必要的数据以及缩放所需的CPU 处理。
尽可能使用CSS3 Gradient替代图片。
尽可能使用CSS3 border radius替代图片。
使用CSS3 Transform来创建移动、旋转和倾斜效果。
对于小型的单个图片,可以使用Data URI。这样可以节省一张图片的下载量。
避免复杂的SVG,因为它们会延长下载和处理时间。
当包含HTML5时,指定一个预览图片。这样浏览器就不必下载整个视频文件来确定预览图片了。
使用HTML5来代替Flash、Silverlight或QuickTime。HTML5速度更快,而且其他几种形式的运行时插件会消耗系统资源。
主动地以异步方式下载富媒体资源并将其保存在App Cache中。
5. 编写快速的JavaScript。
在JavaScript中进行数学运算时尽量使用整型。JavaScript的浮点运算比相应的整型运算耗费的时间要多得多。在进行数学运算,特别是计算密集型运算时,请使用Math.floor和Math.ceil将浮点数转换为整型数。
降低JavaScript代码量,这样不但可以减少下载的数据量,而且能够提供更好的运行时性能。
按需初始化JS。当需要时动态加载JS。
通过缓存变量(如document和body等)使DOM交互减到最少。
使用内置的DOM代码,如element.firstChild或node.nextSibling等。这些代码都是高度优化的,相对于第三方库能提供更好的性能。
访问大量DOM元素时,使用querySelectorAll。
使用.innerHTML来构建动态页面。
批量标记更改。
维护小巧而健壮的DOM——将其元素数目控制在1000以内。.
JSON快于XML。
使用浏览器的JSON原生方法。
不要滥用正则表达式。
6. 知道你的应用在做什么。
理解JavaScript定时器,了解setTimeout和clearInterval。除非确定要使用定时器完成一些功能,否则不要启动定时器。组合定时器也是如此。
如果监视器的刷新率是60Hz,请将显式帧的定时器调整为16.7 ms。
在IE 10、Chrome和Firefox中,图形处理请使用requestAnimationFrame动画函数。其绘制通过回调实现,因此不需要定时器。
使用可见性API(document.hidden和 Visibilityhange)来确定应用程序的可见状态,如果页面是隐藏的,就关闭该活动。这样可以节省CPU和电池寿命。
Mann建议在IE中使用Windows Performance Tools来测试Web页面的性能, 并以减少CPU时间和增加并发性为目标进行优化。
1. 快速响应网络请求。
避免重定向。排名前1000的网站中,63%使用了重定向。如果不执行重定向的话,页面速度可以提高10%。
避免Meta-refresh。世界上14%的URL使用了Meta-refresh。
尽可能通过CDN定位用户,使服务器响应时间最小化。
从不同的域下载资源,使并发连接的应用最大化。
复用连接。不要在响应请求时关闭连接。
确保页面加载不会因合作伙伴网站提供的数据而延迟。
了解耗时的网络组件,如重定向、缓存、DNS、请求和响应等。在IE 9和10中可以使用Navigation Timing API来测量浏览器花在每个操作上的时间。
2. 最小化下载的字节数。
加载页面时,要尽量减少下载的数据量。平均而言,每个页面要下载的数据量达777KB,其中有474KB的图片、128KB的脚本和84KB的Flash。
请求gzip压缩的内容。
将资源保存在本地的包中,比如为Windows商店应用生成的包资源索引(Package Resource Index)文件。这样当需要这些资源时就可以很容易地获取到。
使用HTML5 App Cache缓存动态资源。App Cache会只下载一次资源,从而避免多次网络行程。当应用的版本号发生变化时,它会自动重新下载相应资源。
尽量在响应中使用“Expires”字段来提供可缓存的内容。
通过设定请求的If-Modified-Since字段来使用条件请求。
缓存数据请求,如HTTP、XML和JSON等,因为大约95-96%的请求不会整天变化。虽然这个想法很合理,但实际缓存接收到的请求的网站所占比重还不到1%。
用大写将文件命名标准化。虽然服务器可能把Icon.jpg当作 icon.jpg,但是对于Web平台而言,它们是不同的资源,对应不同的网络请求。
3. 高效地组织标记。
对于IE而言,请使用最新的标记标准,因为它速度最快。IE 10也能识别早期的IE6-IE9标记风格,但是其速度不如新的标记风格。
特定的业务Web应用可能需要强制IE运行于传统模式,请使用HTTP头字段“X-UA-Compatible: IE=EmulateIE7”来代替HTML标签 ,这样速度会快一些。
为了平滑地渲染,样式表应该链接在页面顶部的<head>之中的<title>后面。
绝对不要在页面底部链接样式表。否则加载页面时可能会出现闪烁。
对于分层样式,不要使用“@import”,因为它是同步的,会阻塞CSS数据结构的创建和屏幕绘制。
避免样式的嵌入和内联,因为它会强制浏览器在HTML和CSS解析器之间进行上下文切换。
仅包含必要的样式。不要下载和解析用不到的样式。
仅在页面底部链接JavaScript。这可以确保脚本执行时图片和CSS等资源已经加载,无需等待,也避免了上下文切换。
不要在页面开头链接JavaScript。如果某些脚本必须在开始处加载的话,请使用“defer”属性。
不要内联JavaScript,这样可以避免上下文切换。
使用“async”属性加载JavaScript,这样整个脚本就可以异步加载和执行。
避免冗余代码。世界上52%的网页包含100行甚至更多的冗余代码,比如一个JavaScript文件被链接了两次。
将一个JS框架标准化,无论是jQuery,Dojo,Prototype.js还是其他框架。浏览器没有必要加载多个功能基本相同的框架。
不要加载FB和Twitter等网站的脚本,只是看起来很酷而已,它们会争用资源。
4. 优化多媒体资源的使用。
图片是最常用的资源,每个页面平均会下载58张图片。
尽量避免下载太多图片,根据页面加载时间将图片最大数量控制在20-30之间。
使用Image Sprites将多个图片组合成一个。该技术可以减少网络连接数,也会减少下载的字节数并节省GPU处理周期。
手动创建Image Sprites,因为工具创建的可能会留下较大的空洞,这会加大需要下载的数据量,也需要更多的GPU 处理周期。
使用PNG格式的图片,该格式在下载大小、解码时间、兼容性和压缩率之间实现了完美的折中。JPEG格式可以用于照片。
使用原始的图像分辨率,这样可以避免下载不必要的数据以及缩放所需的CPU 处理。
尽可能使用CSS3 Gradient替代图片。
尽可能使用CSS3 border radius替代图片。
使用CSS3 Transform来创建移动、旋转和倾斜效果。
对于小型的单个图片,可以使用Data URI。这样可以节省一张图片的下载量。
避免复杂的SVG,因为它们会延长下载和处理时间。
当包含HTML5时,指定一个预览图片。这样浏览器就不必下载整个视频文件来确定预览图片了。
使用HTML5来代替Flash、Silverlight或QuickTime。HTML5速度更快,而且其他几种形式的运行时插件会消耗系统资源。
主动地以异步方式下载富媒体资源并将其保存在App Cache中。
5. 编写快速的JavaScript。
在JavaScript中进行数学运算时尽量使用整型。JavaScript的浮点运算比相应的整型运算耗费的时间要多得多。在进行数学运算,特别是计算密集型运算时,请使用Math.floor和Math.ceil将浮点数转换为整型数。
降低JavaScript代码量,这样不但可以减少下载的数据量,而且能够提供更好的运行时性能。
按需初始化JS。当需要时动态加载JS。
通过缓存变量(如document和body等)使DOM交互减到最少。
使用内置的DOM代码,如element.firstChild或node.nextSibling等。这些代码都是高度优化的,相对于第三方库能提供更好的性能。
访问大量DOM元素时,使用querySelectorAll。
使用.innerHTML来构建动态页面。
批量标记更改。
维护小巧而健壮的DOM——将其元素数目控制在1000以内。.
JSON快于XML。
使用浏览器的JSON原生方法。
不要滥用正则表达式。
6. 知道你的应用在做什么。
理解JavaScript定时器,了解setTimeout和clearInterval。除非确定要使用定时器完成一些功能,否则不要启动定时器。组合定时器也是如此。
如果监视器的刷新率是60Hz,请将显式帧的定时器调整为16.7 ms。
在IE 10、Chrome和Firefox中,图形处理请使用requestAnimationFrame动画函数。其绘制通过回调实现,因此不需要定时器。
使用可见性API(document.hidden和 Visibilityhange)来确定应用程序的可见状态,如果页面是隐藏的,就关闭该活动。这样可以节省CPU和电池寿命。
Mann建议在IE中使用Windows Performance Tools来测试Web页面的性能, 并以减少CPU时间和增加并发性为目标进行优化。
发表评论
-
width,heightwidth,heightwidth,height
2017-05-16 10:08 650是不是显示器的分辨率啊。下面你自己选择:min-heigh ... -
js获取项目根路径
2014-08-25 16:43 1048//js获取项目根路径,如: http://localhost ... -
jquery取得text,areatext,radio,checkbox,select的值,以及其他一些操作;
2014-08-11 15:00 1533jQuery给控件赋值.... 1.jQuery给span取值 ... -
JQPRINT-不错的jquery打印插件
2014-07-30 16:42 2342JQPRINT-不错的jquery打印插件 j ... -
html 路径
2014-06-25 10:07 549www.163.com/1.html (当前路径) www.1 ... -
全屏全屏全屏全屏
2014-06-10 15:49 600window.open(url,"",&q ... -
DOCTYPE声明对JS获取窗口宽度和高度的影响
2014-05-16 11:32 915DOCTYPE声明对JS获取窗口 ... -
html按钮有两种 button,div显示,
2014-05-07 15:26 1808html按钮有两种: <input type=" ... -
Window_Open详解
2013-10-24 09:57 835Window_Open详解 引:Window_Open ... -
js总结
2013-10-11 10:38 533var EventUtil = ... -
html position
2013-05-23 16:13 837博客分类: html posit ... -
Javascript跳转页面和打开新窗口等方法
2013-05-22 16:16 1258Javascript跳转页面和打开新窗口等方法 1.在原来的窗 ... -
完美解决网页背景图片自动适应当前显示器分辨率的问题 - 古月小简
2013-05-13 10:47 1542... -
JavaScript正则表达式exec和test方法实例!
2013-04-25 10:14 1333JavaScript正则表达式exec和test方法实例! & ... -
javascript数据类型转换
2013-03-21 14:00 925parseFloat 转换成浮点数 parseInt 转换成整 ... -
HTML页面地址栏参数传递与获取
2013-03-04 16:28 6335如何实现HTML页面地址栏参数传递与获取 我们知道,在服务器端 ... -
html 标签的src属性 含有变量
2012-09-13 15:06 54001 <script type="text/ja ... -
地址栏地址
2012-07-26 13:51 1116// 当前地址栏地址 var href= location.h ... -
js 获取div里的值 2种方法给父窗口控件赋值和取值
2012-07-18 11:05 8076js 获取div里的值 2种方法给父窗口控件赋值和取值 分类: ... -
页面刷新
2012-06-20 18:10 1400window.location.reload() window ...
相关推荐
本文将详细探讨如何针对数据库操作、存储过程、数据访问方式以及数据绑定等方面进行优化,以实现Web程序的提速。 首先,数据库操作的优化至关重要。在ASP.NET中,连接池是管理数据库连接的重要机制,它可以减少创建...
船舶行业工业互联网应用提速.pdf
在阿里集团,有上万多个应用,大部分应用都是 Java 应用,95%应用的构建编译时 间是 5 分钟以上,镜像构建时间是 2 分钟以上,启动时间是 8 分钟以上,这样意味 着研发同学的一次改动,大部分需要等待 15 分钟左右,...
) 提速方法三、智能内存释放:以便保护系统有足够的内存给活动应用程序,以此加速系统整体速度 *提速方法四、系统错误修复:扫描并修复系统错误,系统错误是电脑提速缓慢和常发生异常的重要原因。
1.5 我的第一个.net应用程序13 1.6 本章 小结17 第2章 visualbasic.net编程基础18 2.1 基础编程知识18 2.1.1 关键字及标识符18 2.1.2 数据类型20 .2.1.3 变量与常量24 2.1.4 自定义结构体26 2.1.5 数组27 2.1.6 ...
本主题涉及的是"第5次提速列车数据库+列车查询程序",这显然与中国的铁路系统有关,特别是2007年实施的第五次全国铁路大提速。这次提速不仅提升了列车的速度,也对信息技术在铁路运营中的应用提出了新的要求。 首先...
软件通过实时调度有限的CPU资源给活动应用程序,从而加速程序运行速度。软件采用的是软加速技术,不超频,不损伤硬件,您可以放心使用。经用户实践使用测试证明,本软件性能已超越国外著名同类软件7MAX! 装机必备!
**Win 2021操作系统提速五大秘技详解** 在使用Windows 2021操作系统时,有时可能会遇到系统响应慢、程序启动和关闭时间较长等问题。为了优化系统的性能,以下是一些有效的调整方法,可以帮助你提升操作系统的运行...
### 计算机行业点评报告:鸿蒙原生应用发展提速,重点关注鸿蒙落地应用领域 #### 报告摘要及核心观点 近期发布的行业报告强调了“纯血鸿蒙”HarmonyOS NEXT的发展动态及其对鸿蒙生态的影响。报告指出,随着Harmony...
第2~6篇为VB 2008专题应用程序开发实例,通过19个专题领域实例,详细深入地介绍了VB 2008各种领域的应用开发技术和技巧,具体包括:数据库应用开发实例、网络与通信开发实例、多媒体应用开发实例、图形图像处理实例...
本文将围绕“PHP应用提速面面观”这一主题展开讨论,旨在为读者提供一系列可行的PHP应用优化方法。 #### 二、提升PHP应用性能的重要性 在当今快速发展的互联网时代,网站响应时间的快慢直接影响用户体验与业务发展...
AlacrityPC1 0老朽痴拙汉化版 PC优化游戏提速x86 net 是一个实用程序 旨在帮助您获得PC最佳性能来运行资源密集的应用程序 像完现代游戏 它是通过在启动应用程序之前关闭不必要的服务和程序 当您完成您的应用程序后...
在现代生活中,由于大量的应用程序、后台进程和互联网活动,电脑经常会出现运行缓慢的情况,电脑提速软件就是为了解决这一问题而存在的。 首先,电脑提速软件的主要功能之一是清理系统垃圾。它能够扫描并删除无用的...
【电脑提速八项秘籍】 1. **检查系统资源**:首先,确保你的电脑系统资源利用率高,右键点击“我的电脑”,选择“属性”,再选择“性能”,查看“系统资源”的使用情况。正常情况下,它应接近95%。 2. **优化桌面*...
在传统的B/S架构下,基于J2EE规范的应用系统往往选择WebLogic作为Web应用服务器。然而,在面对大规模用户访问和复杂的网络环境时,仅依靠WebLogic可能会遇到一系列问题: 1. **线程资源管理困难**:在业务高峰期,...
1. **增加内存**:Vista系统占用较多的内存资源,特别是在运行多个程序或大型应用程序时尤为明显。建议将内存升级到2GB或更高,以获得更流畅的体验。 2. **更换更快的硬盘**:如果条件允许,可以考虑将传统的机械...
除了以上五种方法外,还有其他一些方法可以提高应用程序速度。例如,可以使用输出缓存、浏览器缓存和内容交付网络(Content Delivery Network,CDN)等技术来提高应用程序速度。 提高 ASP 应用程序速度需要从多方面...
- 合并CSS与JavaScript文件:将多个样式表和脚本合并为一个文件,降低网络请求次数。但要注意,合并后公共文件的缓存问题。 - Base64编码图片:小图片可直接编码入HTML,减少请求,但可能导致文件体积增大,不适合...
政策利好 新能源汽车推广应用再提速.pdf