每次在项目开发或维护中,总会听到抱怨,页面打开的速度真慢,系统要优化了,代码应该要重构了。就我个人而言,对于页面打开速度的缓慢我们可以质疑和调查,但轻易的说对系统进行优化,代码进行重构这个就有点太随意了。
对于成型的系统而言,尤其是多人合作的系统,对于重构和优化一定要慎重,就如同你将带领你的部队进入原始森林一般。
不过,这些是题外话,这里要讲的是在不进行大动作的情况下让页面的展现速度提高20%,就一般系统而言,这很容易做到。呵呵,至少我现在看到的系统都是这种情况。
这里讲到的技术不涉及到后台,不涉及到架构,仅仅是对页面前端的一些优化改良就能达到这种效果。是不是很难以置信?以前我也是不相信的。这里涉及到了页面开发和功能开发人员的技术和意识的问题。最重要的那一头在页面设计,哦不,准确的来说是页面设计和切割人员,他们在设计页面时如果没有考虑到页面展示效率的问题,然后到功能开发人员整合页面时他们一般是不会考虑效率问题的,而是直接套用页面。并且功能性开发人员一般对于页面优化的知识了解甚少,在增加页面效果功能时加入的代码更是没有效率可言的。如果页面和开发人员都能意识到页面效率的问题,那么对于系统的页面展示将是有很大的效率提升。
好了,废话不多说,对于页面中效率的提升不难,只要记住几个要点就能达到效果,至于更深层的页面优化就不多说,那是专业人士的工作。
- 你的javascript代码位置放的对吗?
对于js处理方式的不同将会明显摆影响到页面展现的速度。
我看到过的写法八成以上都是写在页面的最上方,头部中。可大家有没有想过,把js放到最下方的底部,那样会是什么效果?结果是,页面的功能不变,但展现速度变快的。这是为什么?原因是,js的加载是阻塞线程的,如果你的js加载过慢,比如要加载一用户需要花10秒才能加载完成的js,而你的js又是放在页面头部的,那么只有等到你的js加载完成才能加载余下的页面代码,也就是要让用户等下10几秒的空白页面才能看到别的内容。但是,如果你的js入在了底部,这样,用户在打开页面时会先出现内容,在用户浏览内容的同时,js在用户感觉不到的情况下继续下载。
- 你的js和css代码有处理过吗?
这个是很典型的问题。js和css代码中有大量的空格,进行精简压缩和体积和之前的体积将会有20~50%的差距。而文件体积又是实实在在的影响着页面下载和打开的效率。
这个没什么好说的,大家可以打开自己正在开发或已经开发完成的项目,里面的js和css代码有多少是经过了精简和压缩的。
以上两个简单的注意点,如果能做到了基本上就能使页面展现速度提升不少,应该能达到20%的效果。当然,以上是最简单也最容易记和处理的两种。要想在页面上提升更多的效率,那就要考虑到更多的环境。下面就不详细说,只是简单的提一下。
页面中的内容对于更新程度的不同,可以设置不同的过期头信息。这种情况适合高峰期大访问量的门户型网站。
过期头信息其实是很重要的一个效率优化措施,在此基础上,还可进一步考虑页面访问量和更新情况的平衡。
图标是否是在一个图片中合成的?一个页面中有越多的图标,那些打开页面所向服务器中发送的请求就越多,一个图标一个请求。如果在页面中有很多图标,可考虑将其合并成一个图片,再利用css的背景区域定位的技术在页面展示。这里就有了一个大数据的请求和多个小数据请求的对比问题,一般来说,一个图片的效果会更好,因为在页面中有可能使用了缓存时间,并且可能会是多个模块进行共用。那些用户在打开页面时只会下载一次,下次再打开同一页面时就会从缓存中加载。
是否使用了静态资源服务器?如果一个网站同时使用了一个静态资源服务器,那些它将会分流那些静态资源。如LOGO,固定图片等等,不仅仅会减少主服务器的处理压力,也会区分对待不同资源,那么静态资源基本就会在用户电脑中有个长时间的缓存。另一点,现在还流行商业的分发服务。就是将你的静态资源提交到商业收费的服务器,它们是云系统,在多个地区都有服务器,将会使静态资源加载提升。
内容压缩技术。现在已经看到不少的容器已经支持内容压缩了。就是大家经常听到的gzip技术。如果服务器和浏览器都支持,将会大大减少网络传输流量,一般都能减少30%以上。
当然,还有更多的别的细节点,如etag的支持,组件的分发,js的合并等等。这些就不细说了。现在这个时间没心思再写下去了。
最后,还是提醒一点,对于开发技术人员来说,能时刻记住最前两条就能使页面显示更快,效率更高。
分享到:
相关推荐
百度手机浏览器在其Beta2版本中引入了一项重大更新——自主研发的“极速内核”,这一创新显著提升了浏览器的性能,浏览速度提高了30%。这一改进对于解决手机用户在上网时遇到的加载速度慢和耗时长的问题具有重要意义...
7. **优化与压缩**:`.packed.`前缀通常表示文件经过了压缩或混淆,目的是减小文件大小,提高页面加载速度。这可能采用了工具如uglifyjs或cssnano对JavaScript和CSS进行了压缩。 综上所述,这个项目实现了在HTML...
在网页设计和开发中,jQuery库常常被用来增强页面交互性,提高用户体验。"jQuery页面滚动元素展现隐藏动画插件"就是这样一个工具,它利用jQuery的事件监听和动画功能,当用户滚动页面时,使某些元素以动画效果展现或...
如果你想测试的是完整的页面展现时间(即从用户发起请求到页面完全展现的时间),可以尝试以下方法: - 将整个页面请求视为一个事务,使用lr_start_transaction和lr_end_transaction对其进行包裹。 - 在LR中,可以...
4. **缓存机制**:为了提高性能,Dorado内置了缓存管理机制,可以缓存经常访问的数据,减少对服务器的请求,从而加快页面加载速度。 5. **异步处理**:Dorado支持异步操作,通过Ajax技术,能够在不刷新整个页面的...
通过优化图片大小、使用懒加载技术、减少HTTP请求等方法,可以提高页面加载速度。 8. **浏览器兼容性**: 由于不同的浏览器可能对某些HTML5特性支持程度不同,开发者需要确保页面在主流浏览器(如Chrome、Firefox、...
在探讨HTML页面过渡效果时,我们首先需理解其基本概念:HTML页面过渡效果是指网页在加载、切换或关闭时所展现的视觉动画效果。这些效果不仅能够提升用户体验,还能增强网站的吸引力。以下是对给定文件中提及的关键...
确保HTML页面加载速度快且资源占用少,可以使用懒加载技术,只在需要时加载部分流程图,或者对大量节点进行分页加载。此外,还可以利用缓存策略减少不必要的服务器请求。 7. **样式与主题定制** 纯HTML页面允许更...
在开发H5页面时,开发者可以借助各种工具提高效率,例如代码编辑器Sublime Text、Visual Studio Code等,它们提供了丰富的插件和代码提示功能。此外,预处理器Sass或Less可以帮助管理样式,框架如Bootstrap和...
- 使用具体数字来量化工作成绩,如“页面加载速度提升30%”、“用户满意度提高20%”等。 2. **突出重点**: - 在有限的空间内突出自己的核心竞争力,如精通某种编程语言、在特定领域有深入研究等。 3. **简洁...
dorado展现中间件是一款专为Web应用程序设计的表现层快速开发框架,它结合了AJAX技术,旨在提高Web应用的开发效率和用户体验。dorado由两大部分组成:一个用于Web应用表现层的开发框架以及一套配套的集成开发环境...
在实际开发过程中,开发者可能还会利用预加载(Preloading)或预读取(Prerendering)技术来预先处理某些关键资源,进一步提高页面的响应速度。同时,合理使用CDN(内容分发网络)也能有效地加快全球范围内的资源...
Smooth ONePage Scroll 是一种流行的JavaScript插件,用于创建单页面滚动效果,这种效果使得整个网站内容在单个页面上以平滑滚动的方式展现,而不是通过传统的多页面跳转。这种设计模式通常被称为"全屏滚动"或"一屏...
在IT行业中,网页设计是至关重要的一个环节,它直接影响到用户体验和网站的转化率。...通过细致的编辑和优化,设计师可以打造出既能展现品牌形象,又能提供出色用户体验的登陆页面,从而提高网站的用户参与度和转化率。
- **页面展现**:确保页面内容清晰可读,视觉效果统一。 - **页面美化**:运用色彩搭配、字体选择等手段提升用户体验。 ##### 3. 页面字体 - 规定字体类型、字号、颜色等细节,以保持页面一致性。 ##### 4. 边距...
缓冲效果意味着当用户滚动到页面的边缘时,新的内容不会立即加载,而是等待一段时间,这样可以提高页面加载速度,减少对服务器的压力,同时也确保了用户在浏览时的流畅感。预览链接...
这个页面不仅占据了网站总浏览量的20%到28%,而且是买家进行购买决策并采取行动的关键区域,对于新注册用户的贡献率高达30%-40%。因此,商品详情页被誉为"黄金页面"。 商品详情页的重要性不仅体现在买家方面,对于...
SPDY是一种由Google开发的网络协议,它优化了HTTP协议,减少了延迟,提高了网页加载速度,尤其对于有大量HTTP请求的页面,效果更为显著。在Windows 8.1和Windows 7平台上,IE11都集成了SPDY/3,进一步提升了网络性能...