WordPress建站心得(二)网站架构设计

在上一篇文章《WordPress建站心得(一)前端性能优化》中,我们提到了如何在服务器和网络状况不变的情况下,通过调整优化请求数目和顺序,缩短页面呈现时间,从而提升用户体验。不过,这种优化只是在请求之间的优化,它并不能提升每个请求的响应时间,如果需要继续优化性能,则必须从服务器和网络本身入手。 我们谈到服务器性能,主要有三个比较重要的衡量标准。一是吞吐量,表示网站在一定时间内能有效承载的请求的最大数量,也就是网站能承受多少人同时访问。二是资源消耗,表示网站在处理一定数量的请求时,所消耗的服务器资源,这和网站的成本直接挂钩。三是首包时间,表示网站返回动态(如PHP, JSP)与静态请求(如js,css,jpg)所需要的计算时间。 在这三个标准中,传统的性能优化主要集中在头两个方面,这无可厚非,因为直接涉及到网站的运营成本和覆盖范围。诚然,这三个标准其实相互作用,一个性能优良的网站,必然会有较高的吞吐量,较低的资源消耗,以及较低的首包时间。不过这并非完全正确,因为采用传统方法优化服务器架构,只能在前两方面有所进步。比如,采用web–>application–>db三层服务器集群,中间通过load balancer来动态调配,的确能极大增加吞吐量和降低单服务器资源消耗,但首包时间并不会因此而大大降低,反而会因为服务器之间的网络沟通产生延时。 回到WordPress的例子上面,相信很多站长都和我一样,没有充裕的budget,只是凭个人爱好而建站,必然没有那么多资源建设庞大的服务器集群,但我们同样有很多办法优化我们仅有的vps性能,从而降低首包时间,减少资源消耗,增大吞吐量。这篇文章针对的正是我们这些草根站长。

WordPress建站心得(一)前端性能优化

现在距离创建个人博客已过去将近五个月了,这五个月通过不断调试和优化个人博客,我学到了很多,中间虽然有挫折,不过最终都一一克服了。我发现我真是一个完美主义者,发现一丁点未优化的地方都寝食难安。通过这些折腾,让我更加了解如何架构一个网站,并让它既快速又安全。我想通过这篇和接下来的两篇文章,分享一下我的心得。虽然不一定完善,不一定适用于所有环境,但在我看来确实对提高网站的用户体验极为重要。有兴趣的朋友不妨一看,没兴趣的飘过也成。 在我看来,一个网站的价值主要体现在四个方面——功能、交互、性能、安全。只要做好这四点,做好一个网站并不难。WordPress作为目前最流行的内容管理系统,有着丰富的插件,可以快速实现多种多样的功能。同时,站长可以通过主题的方式管理和优化交互,提高用户体验。这两点在这几篇文章中暂时不会涉及。我想着重谈的是后两个方面——性能和安全。这两点也是目前许多站长所忽视的。 本篇文章的主题是前端性能优化,主要分享如何在服务器性能和网络状况不变的情况下,让网页更快地展示在用户的浏览器中。第二篇文章的主题是网站架构设计,主要分享如何通过合理配置服务器,减少资源消耗,提高网站响应速度,增大吞吐量。第三篇文章的主题是Web安全与隐私,主要分享如何防范流行的网站攻击,保护用户隐私。

告别BAE,转战VPS

从6月29日我的个人站点上线以来,已经整整四个月了。从最初完全不懂任何PHP和站点设置,到现在入门,经历了许许多多。BAE是一个很好的平台,部署简单,网络通畅,对于刚入门的我来说足够了。不过随着深入了解,我发现BAE作为wordpress的平台还是有一定局限性的。 无法本地写文件。这个是一个硬伤,由于不能本地写文件,导致所有插件和升级都必须手动svn完成,耗时耗力,而且由于无法本地写文件,一系列的文件型缓存无法应用,制约了性能的提升。这才有后来研究迁移memecached插件的事情。此外,所有上传的附件都不能永久保存,只能使用百度云存储的插件才能解决。