1 数据库缓存。

常见的做法是用内存做cache,把数据库里的内容提前取出读到内存里,用户再请求时,就不直接读数据库,而是读内存里的数据,从而缓解了数据库的压力。

过去比较常用的缓存软件是memcached,现在则比较流行redis。两者都是以key-value的形式把数据存储在内存中。

2 我们还有一种优化方法,是将所有的动态文件,比如文章,都生成一个静态的HTML文件,这样用户访问的时候,也不需要直接读数据库,而是从硬盘里读出静态的HTML页面。

3 CDN

但网站真正的访问速度想提高,还有一种比较重要的方式,就是借助CDN,把网站的静态文件都缓存到CDN服务商的网络中,从而实现加速。

CDN的全称是「内容分发网络」,原理是利用缓存技术,把一些文件缓存在遍布全国的CDN节点中,从而让网站的用户无须访问服务器,直接从就近的节点中获取内容。

目前使用CDN已经成为大中型互联网公司的标准配置。

使用CDN主要有两个好处,一是图片、js、css、flash等静态资源会消耗网站流量的80%,使用CDN后,这80%的流量就节约下来了,

从而缓解了自己服务器的带宽消耗;二是网站用户会在最近的CDN节点处直接获取静态资源,而不必访问服务器源站 -- 

比如湖南电信的用户可以从CDN在湖南电信的节点获取图片、js、css等,而不必再访问远在美国的源站 -- 

从而可以让整个网站的访问速度获得80%左右的提升。

4 根据需要考虑使用云存储。这样可以把占用硬盘空间最大的图片等内容保存到云存储上,而不占用本地硬盘空间。

一些云存储还带有CDN的功能。目前国内比较流行的云存储有又拍云、七牛、阿里云的OSS等。