网站性能优化

虽然网站优化在这个话题有点大,我只能从本身的一些理解分享一些本身对于网站优化的意见。
javascript

一:css

首先,咱们在优化网站以前咱们要搞清楚咱们的一个基本的上网流程。html

上网的过程无论多么复杂,我总结无非就是两端一线,客户端、服务器端、还有就是网络路由。java

客服端:web

       一、当咱们在浏览器输入网址并回车后,若是你是第一次访问这个网址例如www.kscenery.com  。你的浏览器并不知道这个网站的IP,因此第一次请求时发向DNS服务器,进行DNS解析,那什么什么事DNS解析呢?编程

(脑补一下:DNS解析就是为了方便人们很好地记忆网址,而不是主机IP地址,将IP地址与域名之间一一对应起来,亲你访问了网址,实际上你的网址是经过了域名解析这个行为来找到的主机IP,so咱们上网首先要通过专门的DNS服务器来帮助你完成!)浏览器

        二、DNS服务器查询到该网址对应的IP后,再给你发回,而后浏览器根据IP地址向www.kscenery.com  对应的web服务器发送请求。(客服端的第一步算完了,来看看服务器端)服务器

服务器端:网络

        一、首先在服务器端有一个监听请求的东东,那是什么呢?是Socket!socket

{这个网上有脑补,我找了一些看你可否理解:他会根据socket.Accept()当即建立一个socket负责与发送请求的浏览器进行通讯,浏览器原本就是用socket与服务器通讯的,所以浏览也就是一个socket(说白了就是客服端与浏览器通讯用的。Socket接口是TCP/IP网络的API应用程存编程接口),由于监听请求的的socket占用一个线程,所以咱们也建立另外一个线程专门处理客户端浏览器的请求。},

负责监听请求的Sockets发现有请求到达,

        二、若是发现请求的是静态页面,我么直接读取静态页面页面,并生成响应报文头(text/html),经过socket发回给浏览器;若是请求的是图片的话,生成响应报文头(image/jpeg),和图片内容一块儿发回给客户端,像css,js之类的都是基本同样的处理方式;

            若是发送来的请求是动态页面,那服务器该怎么处理请求呢?他会先先处理网页的骨架和渲染,而后再html和css都加载完了才去处理js的行为。这也是为何咱们通常将script放在/body以后。在这期间浏览器会与服务器就行屡次的交互。也就是处理完毕后将处理完的结果交给socket,由socket 发回给浏览器。

二:

当咱们对这个流程有所了解后,就能够更好的理解一些优化的措施

一、固然首先想加快页面的加载,增长网速呀什么的也是灰常重要的,不过对于前段的童鞋来讲就不讨论了~~

二、仔细想一想,咱们想要冲前段的角度来加快页面,减小请求的发送,使浏览器与服务器减小没必要要的交互不失为一个好的办法。

(1)合并css文件、javascript文件

(2)图片能够用一张大图一次性上传,使用图片切割

(3)css中尽可能不使用通配符选择器(它会使重绘增多,加剧css渲染)

(4)实用工具将css、js中的文件压缩

(5)编码是增长js代码的耦合度,减小代码量

(6)图片也能够经过专业工具进行压缩,能用JPG不要用PNG

(7)在数据交互时减小304重定向的状况

ok!自我小小终结了一下下,要是有错请帮忙果断提出,

相关文章
相关标签/搜索