随着过往记忆大数据技术博客的浏览量逐渐增多(目前日IP达到5k+,PV达到1.5W+),博客的访问速度越来越慢,在高峰时期打开一个页面需要近10s的时间,这样的情况非常的糟糕,没多少人愿意等待近10s,所以优化网站的访问速度迫在眉睫!
先来介绍一下本博客的相关配置信息:博客购买的是腾讯云主机,CentOS 6.6 64位、1核、1GB内存、1Mbps带宽如下:
这样的配置对于个人博客一般就够用了,但是由于本博客浏览量逐渐增多,出现了内存和CPU不够用的情况。当然通过增加服务器的配置肯定是可以解决这个问题的,但是光增加1个核的费用就达到了500多元,这对于个人博客来说视乎难于承受。所以没办法只能通过技术手段来提升网站的访问速度。下面将详细介绍如何实现。
图片异步加载
一个网站如果没有一张图片那肯定很单调,而且也不太美观。但是图片多了也会有个问题:那就是每访问一个页面都需要加载大量的图片,(我的一篇文章加载的图片数量达到了20张以上)而图片的大小一般几十到几百KB不等,这些图片的加载势必影响到网站的访问速度。而且默认情况下用户一打开页面浏览器就会加载文章中的所有图片,但是不是所有的人都会把这个页面的界面全部浏览到,所以得到的一个结论就是:图片只有在可视化区域才加载,视野之外的图片不加载。这就是图片异步加载技术!本博客的《网站优化:图片异步加载》文章详细介绍了如何使用异步加载技术来加载图片。通过引入了图片异步加载,我博客的访问速度最少提高了一半,也就是一个页面大概3-5s就能打开。
静态文件使用CDN加速
这里强烈推荐使用七牛云加速(点击这里),其默认实名认证注册用户都有10GB的免费国内流量和10GB的免费国外流量,100W次的GET请求次数,这对于小型网站就够用了(我目前每月使用七牛流量达到了近60GB了)。我们可以将所有的静态资源(js、css、所有的图片、字体文件等)存放在七牛云服务器中(《网站建设:强烈推荐使用七牛云存储》文章介绍了WordPress博客如何配置使用七牛云服务器)这样就可以大大降低自己服务器的压力。因为静态资源直接请求七牛云服务器。目前本博客的所有CSS文件、JS文件、所有图片以及字体都存放在七牛云服务器中,通过引入CDN加速之后,就算是高峰期,现在本博客也能在3s内迅速打开。
图片优化
图片对网站的加载也有很大的影响:如果图片很大,那么加载完这张图片需要的时间就会变成;而且也会增加服务器的流量(特别是那些有流量限制的服务器),所有图片的优化也很重要。
我们可以缩小图片的尺寸,对于一些缩略图我们可以通过裁剪,而没必要加载整张图片;上面提到的七牛云服务器支持图片的各种裁剪(具体如何使用请参见其官方文档),通过裁剪的图片大小一般都要比原图小很多,这可以减少流量。
在正文中,图片一般都不会裁剪,而是直接显示原图。我们一方面想在文章中显示质量比较高的图片,一方面又想提升加载速度(减少图片的大小);有没有办法实现呢?有,请使用webp格式的图片吧!
WebP是谷歌推出的适合于 Web 使用的图像格式,在保持同样质量的情况下,可比 JPG 减小 40% 的体积;相较于无损png图片大约减少30%。具不完全统计,互联网流量中60%都产生于图片,如果能用上webp格式,网站的访问速度将会大大提升。
值得高兴的是,七牛云服务器直接支持webp图片格式,我们可以通过其将一张jpg或者png的图片转换成webp图片,这样可以在质量几乎不受影响的情况下,图片大小很少近30%-40%。但是一个问题是,目前不是所有的浏览器都支持webp图片,比如IE浏览器和Safari浏览器就不支持webp格式的图片!那咋办呢,别担心,我们可以通过后端处理事先判断浏览器的类型,然后选中不同的图片格式。
目前访问本博客近60%的浏览器都是Chrome,对Chrome浏览器本博客的所有图片格式都是webp;其他的则直接显示原图格式。使用效果如下图所示:
上图是七牛CDN流量统计,可以看出2016年6月份的时候工作日每天的流量都达到了2.5GB左右,6月16日甚至达到了6GB多!6月17日到6月30日之间流量很少是因为前期流量耗的太厉害了,所以暂时关闭的了七牛CDN加速。
从7月1日开始使用webp格式的图片之后,目前每天的流量都在2GB以下,徘徊在1.5GB之间。这不仅减少了CDN的流量,还加速了图片的加载时间。
这就是本博客近期优化的三项措施,如果你还有更好的方法,请留言交流。
本博客文章除特别声明,全部都是原创!原创文章版权归过往记忆大数据(过往记忆)所有,未经许可不得转载。
本文链接: 【WordPress网站性能优化】(https://www.iteblog.com/archives/1713.html)