到此为止,一共介绍了四种服务器性能优化的方法,分别是:动态内容缓存、浏览器缓存、反向代理缓存、Web组件分离。我们发现在这四种方法中,“缓存”占了大头!确实如此,“缓存”是服务器性能优化的核心思想,我们提出的各种优化方法本质上只是把“缓存”用在了不同的地方,并根据使用位置的不同,个性化定制缓存的使用方法。接下来又要介绍一种缓存的新用法——数据缓冲区。
之前介绍的动态内容缓存、浏览器缓存都是将整个静态页面进行缓存,这种方式有个弊端:由于缓存了整体页面,因此缓存的数据较为笨重,缺乏灵活性。为了解决这个问题,我们可以只缓存数据库中的数据,当用户请求某一页面时,再根据用户的需求从数据缓存中抽出需要的数据,组装成页面返回给用户,从而提升了数据使用的灵活性
什么是数据缓冲区?数据缓冲区有啥好处?
我们可以在数据库之前开辟一块内存缓冲区,我们把这块区域称为数据缓冲区。所有从数据库出来和进入的数据都要经过该缓冲区。那么,数据想要进入数据库,首先需要进入缓冲区,当缓冲区存满时,一次性地写入数据库,从而降低了数据库操作的频率;同理,从数据库出来的数据也会进入该缓冲区,那么下次需要相同数据的时候直接从缓冲区中取即可。要知道,从内存中取数据要比从数据库中取数据快多了,因此缓冲区能大大提升数据插入和查询的性能。
如何构建数据缓冲区?
根据刚才对缓冲区的介绍,我们可以将数据缓冲区分为:读缓冲和写缓冲。
- 读缓冲:用于存放即将被存入数据库的数据
- 写缓存:用于存放最近一段时间访问频率较高的数据
使用Memcache实现数据缓冲区
这里我们使用memcache来实现数据缓冲区。具体的Memcache的介绍请自行百度吧,这里简单介绍下Memcache的几个优点:<