主要有两大板块 1,代码 2,硬件
代码
1.必要的js和css文件 分开放 功能类放在结束(要提交的ajax文件等) 展示的放在页面开头(布局文件等)
2,优化代码 添加Expires头
添加Expires头
页面的初次访问者会进行很多HTTP请求,但是通过使用一个长久的Expires头,可以使这些组件被缓存,下次访问的时候,就可以减少不必要的HTPP请求,从而提高加载速度。
Web服务器通过Expires头告诉客户端可以使用一个组件的当前副本,直到指定的时间为止。例如:
Expires: Fri, 18 Mar 2016 07:41:53 GMT
Expires缺点: 它要求服务器和客户端时钟严格同步;过期日期需要经常检查
HTTP1.1中引入Cache-Control来克服Expires头的限制,使用max-age指定组件被缓存多久。
Cache-Control: max-age=12345600
若同时制定Cache-Control和Expires,则max-age将覆盖Expires
3.压缩组件
从HTTP1.1开始,Web客户端可以通过HTTP请求中的Accept-Encoding头来表示对压缩的支持
Accept-Encoding: gzip,deflate
如果Web服务器看到请求中有这个头,就会使用客户端列出来的方法中的一种来进行压缩。Web服务器通过响应中的Content-Encoding来通知 Web客户端。
Content-Encoding: gzip
4.代理缓存
当浏览器通过代理来发送请求时,情况会不一样。假设针对某个URL发送到代理的第一个请求来自于一个不支持gzip的浏览器。这是代理的第一个请求,缓存为空。代理将请求转发给服务器。此时响应是未压缩的,代理缓存同时发送给浏览器。现在,假设到达代理的请求是同一个url,来自于一个支持gzip的浏览器。代理会使用缓存中未压缩的内容进行响应,从而失去了压缩的机会。相反,如果第一个浏览器支持gzip,第二个不支持,你们代理缓存中的压缩版本将会提供给后续的浏览器,而不管它们是否支持gzip。
解决办法:在web服务器的响应中添加vary头Web服务器可以告诉代理根据一个或多个请求头来改变缓存的响应。因为压缩的决定是基于Accept-Encoding请求头的,因此需要在vary响应头中包含Accept-Encoding。
vary: Accept-Encoding
5.多使用外部的JavaScript和CSS 少使用页面加载js和css
6.较少异步的js或者css 比如:<script src="//kf.xixilife.cn/assets/deploy/jinjin700.js"></script>
就把这个js下载下来 保存到自己的服务器
7.结合软件查看代码是否有报错的 如图:
查看是否文件正确!
8.指定图像和table的大小 image使用height和width
9.页面减肥 删除不必要的空格、注释
10.使用js压缩工具 对代码压缩 推荐:JavaScript Minifier
硬件
1,增加服务器带宽
2,启动web压缩 右键我的电脑》属性》服务》web设置》找到web服务启动压缩
3,对服务器cpu 网络监听一段时间,看下服务器的cpu 内存使用情况
4,关闭服务器不必要的服务程序,结束进程,如有临时文件备份文件,重启服务器
5,对服务器管理,更新病毒库
6,更换服务器ip地址
7,开启网络保护
8,对服务器温度监听是否 异常》异常,(提交工单)清灰处理
总结对硬件升级先查看服务器的状态,cpn,温度,内存,带宽,访问量,请求数,TCP,综合分析哪里不行升级哪里