数据库缓存
2019-08-06 本文已影响80人
求知笔记
数据库的缓存机制分为两个层面。
- 由数据库提供,可以对数据表建立的高速缓存。数据库的数据临时保存在一个位置上,再次同样的请求直接把这个数据返回去,而不需要再次去查询各种表取数据了,减少了查数据库的时间,提升效率。并不是所有的历史记录都缓存起来,要有策略,比如只缓存两个月的数据,并且两个月之前有请求过之后不再请求该数据的时候就会回收,就是把这条记录抹掉,就近多次请求的才会保存。时间过长、使用率不高的优先清除,要不然缓存太多就失去了缓存的本质和意义。
- 在数据库中,数据都是存放在磁盘中的。虽然数据库层做了对应的缓存,但这种数据库层次的缓存一般针对的是查询内容,一般只有表中数据没有变更的时候,数据库对应的缓存才发挥了作用。有时并不能减少业务系统对数据库产生的增、删、查、改产生的庞大压力。此时,一般的做法是在数据库与业务服务器之间增加一个缓存服务器,比如我们熟悉的redis。客户端第一次请求的数据从数据库拿出后就放到了redis中,数据不过期或不更改的前提下,下一次的请求都从redis中直接拿数据,这样做极大的缓解了数据库的压力。