怎么样让网站显示速度更快些?
1、最小化的HTTP请求(content)
因为在一个页面中所花费的时间大多数是在scripts、stylesheets、images和flashs等等,这些都是通过HTTP请求来加载的,这些大概占用了加载时间的70%到80%。因此,减少这些加载时间可以大大优化页面的加载速度。使用下面的几种方法可以有效提高加载速度:
将所有的scripts脚本代码组合成一个单独的script脚本代码,将可以合并的所有css合成为一个stylesheet.
CSS Sprites(国内称为:CSS精灵),是一种网页图片应用处理方式。它允许你将一个页面设计到的所有零星图片包含到一张大图片中去(要求:不高于200KB的单张图片,因为这样可以保证载入时间和未处理前的时间差不多).
图像映射(Image Maps):就是图片分成几个区域,或者被称之为“热区”的图像;点击“热区”会显示一个网页。注意:除AltaVista、Google支持Image Maps,其他引擎不支持。当”蜘蛛“程序(即爬虫)遇到这种结构时,往往不知所措。因此在sem优化中,尽量不要设置Image Map链接
内嵌图像(Inline images)使用data URI scheme
举例:假设有以下图像
http URI scheme 标准形式:
data URI scheme方式:
上面标签内容解析:data-取得数据的协议名称
image/png-数据类型 base64-数据编码方式
iDJJK....-编码后的数据
:,;-data URI scheme指定分隔符
这样,我们就将一张图片数据内置到http中,节省了一个HTTP区别请求。
在css中使用data URI scheme:body{background-image:url("data:image/png;base64,iDDJJ....");}
注意:浏览器不会缓存这种图像,若该图像在网页很多地方使用,会加大网页内容,延长下载时间。
解决办法:在一个css class中加入data URL,在需要显示图像的区块调用这个class
例如:.logobg{background:url(data....)}
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
Python全栈 Web(Django框架、概述、项目配置)
前言: Flask虽然是轻量级框架但是复杂操作需要自己写扩展和灵活性还是非常高的 基于Flask的项目 我就写在一个博客里了 持续更新。。。 Django众所周知的Pythonweb框架 之前写过一篇Django的博客 是1.11.8版本的 后来决定先写Flask 所以就没有持续更新 Django1.11.8版本 今天我们说的是Django2.xx版本 2.xx版本还是有所不同的 大概19年初中期就会出2.xx的长期支持版 Django Django 项目是一个Python定制框架,它源自一个在线新闻 Web 站点,于 2005 年以开源的形式被释放出来。 Django 框架的核心组件有: 用于创建模型的 对象关系映射 为最终用户设计的完美管理界面 一流的 URL 设计 设计者友好的模板语言 缓存系统 当前使用的版本是最新版 也就是
- 下一篇
深入理解 java volatile
在开始讲volatile之前,我们需要对以下的内容有所了解. java 内存模型(JMM) 在java中,java堆内存是存在数据共享的,这些共享数据的通信就是通过java内存模型(JMM)来控制的. JMM决定一个线程对共享数据的写入何时对另一个线程可见. JMM是一个抽象的结构,它定义了线程和主内存的关系: 线程之间的共享变量存储在主内存(Main Memory)中 每一个线程都有一个私有的本地内存(Local Memory) 本地内存中储存了该线程可以读写变量的副本. JMM 只有存放在java堆和方法区中的数据,才会被线程共享,对于其他区是属于线程私有的数据,不受JMM的影响. 从JMM中可以看出,如果线程之间的数据,是不能直接进行数据传递的,一定要经过主内存进行传递. A线程更新数据 -> 刷新主内存数据 -> B线程读取主线程数据 为什么需要JMM? 为什么需要内存模型,直接读写内存不可以吗? 主要是因为下面两个原因. CPU缓存一致性 CPU与内存读写和运算速度不在一个量级,CPU效率会比内存高的多. 为了解决CPU和内存效率差异问题,引入了 高速缓存(Cac...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- MySQL8.0.19开启GTID主从同步CentOS8
- 设置Eclipse缩进为4个空格,增强代码规范
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- SpringBoot2更换Tomcat为Jetty,小型站点的福音
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- Hadoop3单机部署,实现最简伪集群
- CentOS8安装Docker,最新的服务器搭配容器使用
- Docker快速安装Oracle11G,搭建oracle11g学习环境