`

通过六种方法提高网站访问速度【转】

阅读更多

1.把你的 .js 库文件地址替换成 Google CDN的地址 ::


随着 jquery 和 mootools 等js库的使用需要加载的.js文件越来越多也越来越大,

通常传统的网站是上传到网站本身的目录。 但对于一个接近70多KB的jquery. js体积确实不利于网站响应速度的提升, 此时就应该使用Google API .

把你的 http://www.cnblogs.com/jquery.x.x.js 替换为  http://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min.js 的意义在于当一个用户访问过使用 google api 的博客之后, 再次访问其他调用了该api地址的网站就不需要再次加载该文件了 。从而达到提速的目的。

不单是jquery库,其他诸如mootools  yui 也可以使用这种方式。
推荐一个网站 (  http://scriptsrc.net/   ) 这个网站收集Google 提供的 js API路径。直接点击复制就可以获取到最新版的文件路径。




2.精简和优化你的 js 和 CSS ::

虽然有了缓存和gzip保驾护航,但是对于 js 和 css  的优化却也是必须的。我们写的javascript脚本和 css 代码都是经过缩进和换行的,适合人类阅读, 但是浏览器执行这些脚本不并需要这些无意义的空格和换行。 所 以我们应该去除这一些空格换行,甚至缩短 javascript 和 css 里面的变量。诸如此类的优化工具有 YUI Compressor 和 Closure Compiler 。这两个工具都是基于 java 的,使用应该安装jdk并且设置 JAVA_HOME 。(对于非程序员的网站管理员而言确实有点困难)

推荐一个地址 (  http://sweet.fengyin.name/?hl=zh-CN 

此工具可以不用在本地安装jdk,直接上传 js 和 css 文件进行压缩,可选择是采用 YUI Compressor 或 Closure Compiler 。

 

通过 YUI Compressor 或 Closure Compiler 和 压缩的之后的代码如

function hello(name) {
  alert('hello 博客' + name);
}
hello('园');

它会变成 

function hello(a){alert("hello 博客, "+a)}hello("园")

把你的缩进和空行去掉的同时也缩短里面的变量名称,这种优化方式是不可逆的,所以使用这两种压缩之前请备份一份源文件方便以后的修改。




3.GZIP 压缩你的 JS 和 CSS 文件 ::

 

压缩js和css可以通过服务器动态脚本进行也可以更简单的使用apache服务器可以在网站根目录 .htaccess 中加入以下代码

 

<IfModule mod_deflate.c>

AddOutputFilterByType DEFLATE text/html text/css text/plain text/xml application/x-javascript application/json
Header append Vary Accept-Encoding
</IfModule>

这段代码的意思是调用服务器的压缩模块对以上文件输出之前进行G ZIP压缩,gzip的压缩之后所有文件都应该能减少30% 以上的体积。 特别是对于大量使用js的博客有了gzip保驾护航之后速度能提 高不少。




4.缓存你的 js 和  CSS 文件 ::

在网站根目录 .htaccess 中加入以下代码
<ifmodule mod_expires.c>
<filesmatch "\.(jpg|gif|png|css|js)$">
ExpiresActive on
ExpiresDefault "access plus 1 year"
</filesmatch>

这段代码的意思是对 jpg|gif|png|css|js 发送 header 缓存头,进行一年的缓存、在浏览器不使用 ctrl+F5 强制刷新时,会一直缓存到时间时间结束, 唯一遗憾的是如果你更改了js或者css文件必须把以前的路径或 者文件名更改,可以这样 base.js?ver=(x) 这种方式下次浏览器就会自动读取并缓存。


5.使用css sprites合并图片

 一个网站经常使用小图标和小图片进行美化,但是很遗憾这些小图片占用了大量的HTTP请求,因此可以采用sprites的方式把所有的图片合并成一张图片 ,http://csssprites.com/  可以通过这个网址在线合并,也可以在ps中合并。

更多 css sprites 的资料请查看  http://baike.baidu.com/view/2173476.htm

 


6.优化你网站图片(图片)::

大量使用的图片和图标虽然可以给网站带来美轮美奂的效果, 图文混编更是一种非常绚丽的博文展现方法。 可图片的体积确实不是很给力,jpg是一种有损压缩格式, 而png虽然是无损的缺憾是体积颇大。 为了减少图片体积达到最快的下载速度, 每一张图片上传前应该优化一下体积.专注于前端的 yslow 有一个工具叫  smushit 

http://www.smushit.com/ysmush.it/ 

此工具是一个无损压缩图片的工具, 可以把你的图片在保持原质量不变的前提下优化体积。 而这种优化体积通常在 10% 以上.意味着
一张30KB的图片优化后只有 27KB 或者更少…… 

 

总结: 

以上6种优化方法都是前端的,前端优化的意义在于减少http请求,减少网站前端程序组成的体积。

其实在后端优化也必不可少减少更多的数据库查询,通过诸如memcache内存缓存进行常调用用的数据缓存才能获得最快的速度。

分享到:
评论

相关推荐

    让网站访问提度,提高加载效率

    ### 提升网站访问速度与加载效率的关键策略 在当今互联网高度发达的时代,用户对网站的访问...通过实施上述策略,不仅可以显著提高网站的访问速度和加载效率,还能提升用户的整体体验,从而为网站带来更多忠实的访客。

    SQL server 六种数据移动方法

    ### SQL Server六种数据移动方法详解 #### 一、通过DTS进行数据...通过上述六种方法,可以根据实际需求选择最适合的数据移动方案。每种方法都有其特点和适用场景,合理利用它们可以帮助我们更高效地完成数据迁移工作。

    最新提高window 7性能的方法 加快开机速度

    这种情况会严重影响文件访问速度,从而降低系统整体性能。定期进行磁盘碎片整理可以帮助恢复文件的连续性,进而提高硬盘读写效率。 #### 实施步骤: 1. **打开“磁盘碎片整理工具”**:可以在“开始”菜单搜索框中...

    Java应用程序转化成exe文件的N种方法

    #### 方法六:使用TowerJ TowerJ是一款专为Java应用程序设计的转换工具,能够将Java的.class文件转换为Windows平台下的exe文件,特别适合于小型项目或简单应用程序的快速发布。 #### 方法七:使用jshrink jshrink...

    Global Mapper中SHP文件转KML文件方法

    - **.shx**:索引文件,用于提高对.shp文件的访问速度。 - **.dbf**:数据库文件,存储与几何对象相关的属性数据。 #### 六、总结 通过以上步骤,我们可以轻松地使用Global Mapper将SHP文件转换为KML文件,这对于...

    ucos_ii_arm 提高μCOS-II在ARM上执行效率的几种方法

    通过对μC/OS-II在ARM处理器上的实现进行优化,不仅能够有效减少任务切换的时间,还能提高系统的整体实时性和响应速度。通过充分利用ARM处理器的特性,结合合理的堆栈管理和运行模式转换策略,以及实现可重入中断...

    java高并发处理方法

    它不仅可以提高数据的访问速度,还能有效减轻数据库的负担。 1. **架构层面的缓存**:Apache自身提供了缓存模块,例如`mod_cache`,以及第三方的Squid缓存代理。通过缓存静态资源和部分动态内容,可以显著提升响应...

    Win7加快系统速度的9大方法

    如果性能是优先考虑,可以禁用Aero主题,转而使用基本主题,这将有助于提高系统速度。 #### 四、定期清理磁盘和优化硬盘 使用磁盘清理工具定期删除临时文件、系统缓存和其他无用数据,可以释放硬盘空间并提升系统...

    将Java应用程序本地编译为EXE的几种方法

    将Java应用程序本地编译为EXE的几种方法 在IT行业,尤其是软件开发领域,将Java应用程序转换为可执行的EXE格式是一个常见的需求。这不仅有助于提高应用程序的易用性和部署效率,还能够增强其安全性,避免源代码被...

    基于CUDA和C++的图象旋转

    CUDA提供的纹理内存技术可以显著提高数据访问的速度和效率。纹理内存被优化用于频繁地读取2D或3D数组数据,并且内置有硬件支持的线性插值功能,非常适合用于图像处理。 #### 2. CUDA内核函数 CUDA内核函数是在GPU...

    这8种 Python 加速运行技巧真棒.docx

    本文总结了 八种 Python 加速运行技巧,涵盖了代码优化原则、避免全局变量、避免模块和函数属性访问、使用 Just-In-Time 编译、使用多线程、使用 NumPy 等多种方法,帮助开发者提高 Python 代码的运行速度。...

    58-F407+六路pwm+六路编码器.rar

    3. **DMA**:为了实现六路PWM的同时更新,可能需要使用DMA(直接内存访问)来自动写入定时器的捕获/比较寄存器,提高程序效率。 4. **中断处理**:通过设置PWM更新中断,可以在定时器周期结束时进行必要的处理,如...

    2011年大型网站架构设计方案

    - **地理镜像**:根据不同地域的用户访问情况,部署相应的镜像站点,提高访问速度。 #### 六、负载均衡 负载均衡是在多台服务器之间分配网络流量的过程,旨在优化资源利用、提高系统响应速度和容错能力。 **技术...

    数字化工程转型

    数字化工程转型的目标在于提高产品的质量和性能,同时降低生产成本和提高市场响应速度。 #### 三、数字化技术在工业领域的应用 1. **产品性能反馈和可追溯性**: - 通过集成物联网技术,收集产品的实时性能数据,...

    Android源码手机加速度传感器 测试

    这样,无论是哪种特定品牌的加速度传感器,Android应用都能通过标准的API进行访问。 二、传感器框架 Android系统的Sensor框架是处理传感器数据的核心。它包括Sensor服务(Sensor Service)和Sensor Manager。Sensor...

    Java线程实现分析.pdf

    Java 线程技术是提高程序执行速度的重要手段,通过实现多线程技术,可以使多个过程并发执行,提高程序执行效率。在多处理器的计算机上,每个线程都可以竞争自己的处理器及其他资源为自己服务,从而更大限度地利用...

    出版传媒行业数字化转型数据架构设计方法论及典型案例.pptx

    通过科学的方法论指导,合理规划数据采集、存储、计算等环节,并结合先进的数据分析技术,可以有效提升企业的核心竞争力。 #### 七、总结与展望 综上所述,出版传媒行业的数字化转型是一个复杂而漫长的过程,涉及...

    如何利用NAT技术实现局域网用户访问Internet

    这种方式的优势在于可以利用缓存技术减少重复数据传输,提高访问速度;但缺点是可能会降低用户的访问速度,尤其是在用户访问不同网站的情况下,并且对代理服务器硬件性能要求较高。 2. **使用NAT技术**:相较于传统...

    寄存器索引编码字母表连字母检索法六

    这样做可以减少内存访问次数,因为寄存器的访问速度远高于内存。 “字母表”在这里指的是可能用于标识或编码的字符集合,通常是ASCII码或Unicode码。在处理字符串或文本数据时,使用字母表编码可以使我们用字符而...

    疯狂Java讲义源码(第六部分)

    2. `ArrayList`与`LinkedList`:两种常见的列表实现,`ArrayList`基于数组,访问速度快但插入删除慢;`LinkedList`基于链表,插入删除快但访问慢。 3. `HashSet`与`TreeSet`:两种常见的集合实现,`HashSet`无序不...

Global site tag (gtag.js) - Google Analytics