`

一次WEB前端优化尝试

 
阅读更多

         今天对自己做的项目中的一个设计器界面加载速度上进行了优化,因为页面在加载的时候,感觉有点慢。首先,我用firefox的yslow和chrome的pagespeed进行了测试,效果如下,分数有点不同,但是都是很低的。我其实主要在chrome下用pagespeed的提示进行优化的。

yslow优化前:

         

yslow优化后:

 

pagespeed优化前:

 

pagespeed优化后:

 

优化策略:

          1.tomcat配置启用gzip压缩  

          2.tomcat配置静态文件的过期时间

          3.css放页面上方

          4.javascript放页面下方

          5.css和js文件分别合并、压缩

 

tomcat启用gzip压缩

 

打开tomcat的conf目录下的server.xml文件,修改如下

 

    <Connector port="80" protocol="HTTP/1.1" 
               connectionTimeout="20000" 
               redirectPort="8443" executor="tomcatThreadPool" URIEncoding="utf-8" 
                           compression="on" 
                           compressionMinSize="50" noCompressionUserAgents="gozilla, traviata" 
                           compressableMimeType="text/html,text/xml,text/javascript,text/css,text/plain" />

 参考链接:http://blog.csdn.net/hbcui1984/article/details/5666327

 

 

tomcat配置静态文件过期时间

 

打开tomcat的conf目录下的web.xml文件,增加如下:

<filter>
       <filter-name>ExpiresFilter</filter-name>
       <filter-class>org.apache.catalina.filters.ExpiresFilter</filter-class>
       <init-param>
          <param-name>ExpiresByType image</param-name>
          <param-value>access plus 10 minutes</param-value>
       </init-param>
       <init-param>
          <param-name>ExpiresByType text/css</param-name>
          <param-value>access plus 10 minutes</param-value>
       </init-param>
       <init-param>
          <param-name>ExpiresByType application/javascript</param-name>
          <param-value>access plus 10 minutes</param-value>
       </init-param>
    </filter>
    <filter-mapping>
       <filter-name>ExpiresFilter</filter-name>
       <url-pattern>/*</url-pattern>
       <dispatcher>REQUEST</dispatcher>
    </filter-mapping>

过期时间:每次请求增加十分钟 

参考链接:https://tomcat.apache.org/tomcat-7.0-doc/api/org/apache/catalina/filters/ExpiresFilter.html

 

css文件合并压缩,js文件合并压缩

 

合并压缩使用grunt进行处理,简单方便

 

参考链接:http://www.cnblogs.com/snandy/archive/2013/03/11/2949177.html

http://www.cnblogs.com/snandy/archive/2013/05/20/3088613.html

 

总体来说,页面加载速度有所提升,因页面设计器中,各个组件的js和核心js加起来有30多个,我只针对这方面进行了压缩合并,其他引入的js插件都是使用的压缩后的;css方面我也只压缩合并的我自己增加的文件。图片方面没有把所有图片都合并到一个文件中,只有少部分icon整合了,这方面合并后应该还会有所提升。

 

 

 

 

 

 

 

  • 大小: 376.6 KB
  • 大小: 416.2 KB
  • 大小: 237.9 KB
  • 大小: 199.3 KB
0
0
分享到:
评论

相关推荐

    提高Web性能的前端优化技巧总结

    这篇文章讲述可以帮助 改善优化前端的技术,非常有用。主要内容有清理代码、压缩图片、压缩外部资源、使用CDN,以及一些其它方法。这些方法会为你的网站带显著的速度提升和整体性能提升。 一. 清理 HTML 文档 HTML,...

    百度贴吧:复杂Web前端项目的构建工具优化实践

    前言:本人于2014年底开始供职于百度贴吧(以下简称“贴吧”)。...项目构建,或者称之为编译,早已经成为了Web前端项目在发布过程中的一个必不可少的环节。从最早的JavaScript与CSS压缩合并,发展到今天ES

    存储篇 2:本地存储——从 Cookie 到 Web Storage、IndexDB(1).md

    一方面,这本小册为没有接触过性能优化的新同学建立起一个正确的前端性能优化的“世界观”,知道性能优化是什么、为什么、怎么做,从而使性能优化这件事情有迹可循,有路可走。这样在面试现场被问到性能优化层面的...

    ND-FEWD-P4:Udacity前端Web开发纳米学位的网站优化

    网站性能优化组合项目 如果您愿意接受(我们当然希望您接受),您的挑战是优化此在线产品组合以提高速度! 特别是,通过应用您在到的技术,优化关键渲染路径并使... 复制 ngrok 为您提供的公共 URL 并尝试通过 PageSpe

    HTML5专业级图像处理引擎(AlloyImage) v1.1腾讯开源版.rar

    后续AlloyImage将会持续更新,将更多的处理效果与工具加入到其中,并且会在性能方面做出一些优化与尝试,AlloyImage将力求做一个开放、开源的强大的js图像库。 AlloyImage是一个使用Javascript语言开发的,基于Web...

    超酷炫javascript爱心效果

    在现代Web开发中,JavaScript与Canvas的结合不仅打开了丰富多彩的前端视觉效果的大门,也使得复杂动态效果的实现成为可能...总之,使用JS和Canvas实现的超酷炫爱心效果不仅是一次技术的尝试,更是一次创意与艺术的展现

    rrdture:我的 rrd 绘图工具的网络界面

    在为我的项目开发 Web 前端时,我决定做更多的事情,为图表添加一些额外的功能,改进网站外观并优化数据收集。 此外,我还创建了一个基于 MySQL 数据库的姊妹项目用于数据收集和用于可视化。 两者都运作良好。 在...

    怎么刷leetcode-frontend-interview-preparation:这包含前端Web开发人员的面试准备指南

    您将观察其他人编写的优化代码 继续这样做并提高你的水平 Javascript Advance 深入涵盖JS各种主题。 从学习链接中参考我的 JS 文档 Time Complexity 了解如何计算时间、空间复杂度 Polyfills 尝试自己创建 Polyfill...

    高级java笔试题-FE_ROAD:现代前端基础知识点学习、进阶

    每一遍都会有不同的收获,对每一章内容尝试画出思维导图。 《你不知道JavaScript》系列 、 对JS基础讲的很棒 谷歌官方Web相关精品文章 阮老师的博客,入门挺好的 深入浅出E6 infoQ 翻译过来的内容,对ES6各个知识点...

    fui:功能强大的UI框架和渲染引擎,占用空间极小

    Fui是对传统前端框架的全新尝试,它易于使用,占用空间小且速度飞快! 在底层,Fui是使用功能概念构建的,所构建的元素是参照透明的,因此无论您在何处创建它们,它们都将始终相同。 签出以获取演示!特征Fui在其...

    NodeJSBasic:带有Web服务器的NodeJS Basic

    包括: -WebServer(Express) -TemplateSystem(树枝) -数据库(TypeORM)(当前针对MySQL优化) -模块系统-使用“ tgsoft_override”覆盖前端“ Core”文件-文件夹“ frontend”仅用于前端文件! -完整的Core仅...

    matlab代码续行-graffiti:我的尝试项目的集合,这些尝试项目具有新技能或仅出于娱乐目的

    使用Adam优化器进行的培训大约需要10分钟 在训练集上达到了99%的正确率,在测试集上达到了71%的正确率。 实施了CNN模型,实现了更高的测试校正率。 下一步: 使用MXNET实施两个模型。 BNU矿工 在线数据挖掘平台。 ...

    tornado-web:简单的图片分享网站, 基于tornado

    tornado-web 是在学习tornado时自己练手的简单(简陋)图片分享网站. 注意 项目由边学边写而成,对tornado的一些模块并不是十分熟悉,所以代码仍有较大的优化空间; 前端引用了bootstrap, 未对网站进一步美化; jquery等...

    深入理解Nginx:模块开发与架构解析.陶辉(带详细书签)

    Nginx是一个功能丰富、插件(模块)众多、性能卓越的Web服务器,业界多把它放在业务的最前端作为静态资源服务器或者反向代理服务器,应用广泛。本书循序渐进地揭开了Nginx的面纱,从如何使用原生的Nginx入手,进而以...

    githubProfile

    我是一名在法国Meaux出生和成长的前端开发人员+网页设计师。 我着迷于Web设计和开发,性能优化以及在Web上构建有用的东西。 我喜欢探索新技术并尝试解决现实生活中的问题 :sparkles: 。 :telescope: 我目前正在研究...

    战疫 | 疫情数据分析展示(2)

    我做了以下尝试,将之前pyecharts做的地图直接插入到大屏展示模板中,但是由于布局不容易调整,找了做前端的同学,但是布局调整还是差强人意。索性就“抄袭”萝卜大佬的模板。web框架和后端数据来源不变。 项目介绍...

    使用Observable-Swift构建复杂iOSUI

    对于移动应用而言,用户体验非常重要,在开发App的过程中往往...其实这种复杂交互问题,早已在Web前端开发中被大家所注意到。从jQuery到Angular、再到React,就是人们在尝试解决复杂交互开发难题的过程中的产物。jQuery

Global site tag (gtag.js) - Google Analytics