> 백엔드 개발 > PHP 튜토리얼 > 求分页筛选的数据缓存方案

求分页筛选的数据缓存方案

WBOY
풀어 주다: 2016-06-23 14:13:28
원래의
1318명이 탐색했습니다.

有一个数据列表展示,分页,可按各种不同的条件进行筛选。
这种情况下怎么进行数据缓存比较好呢?

如果根据分页与筛选的条件作为key去缓存的话,那得缓存N多组数据了。


回复讨论(解决方案)

这个需要缓存只有N多组进行缓存的了,除非是一个大缓存;将所有数据缓存。然后用数组进行筛选

缓存所有数据,在根据条件筛选的话,太不实际了。
如果每次筛选时,根据筛选条件进行缓存的话,又可能会出现N多缓存,有可能占的缓存太多了。

那么为什么要缓存呢?

如果真心要缓存的话,可以分2级缓存,不过还是要问,这么动态的内容,要什么缓存?

1、缓存所有的数据,id做索引
2、缓存分页和筛选条件,内容只有1的id

各种条件筛选结果的第一页缓存的时间长点,第二页开始缓存的时间短点吧。

如果真心要缓存的话,可以分2级缓存,不过还是要问,这么动态的内容,要什么缓存?

1、缓存所有的数据,id做索引
2、缓存分页和筛选条件,内容只有1的id

内容只有1的id 是啥意思呢。。。


如果真心要缓存的话,可以分2级缓存,不过还是要问,这么动态的内容,要什么缓存?

1、缓存所有的数据,id做索引
2、缓存分页和筛选条件,内容只有1的id

内容只有1的id 是啥意思呢。。。

假设你的数据是

id  name xx
1   a    xx
2   b    xx

那么 1 缓存的应该是这个数据的全集,即

1 => a,xx
2 => b,xx

则分页+筛选的条件则是

分页n+筛选条件 => 1,2

这样可以通过分页+筛选可以获取缓存1中的所需要的集合(即1,2),通过这个集合再去全集缓存中获取真实数据



如果真心要缓存的话,可以分2级缓存,不过还是要问,这么动态的内容,要什么缓存?

1、缓存所有的数据,id做索引
2、缓存分页和筛选条件,内容只有1的id

内容只有1的id 是啥意思呢。。。

假设你的数据是

id  name xx
1   a    xx
2   b    xx

那么 1 缓存的应该是这个数据的全集,即

1 => a,xx
2 => b,xx

则分页+筛选的条件则是

分页n+筛选条件 => 1,2

这样可以通过分页+筛选可以获取缓存1中的所需要的集合(即1,2),通过这个集合再去全集缓存中获取真实数据


  原来是这样  

如果真心要缓存的话,可以分2级缓存,不过还是要问,这么动态的内容,要什么缓存?

1、缓存所有的数据,id做索引
2、缓存分页和筛选条件,内容只有1的id
突然清醒过来,这种情况貌似真不应该用缓存。。

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿