1、基于列表的分页缓存实现
以下内容转载自 NoSQL数据库入门与实践(基于MongoDB、Redis) 刘瑜 刘胜松
分页缓存的背景

分页缓存的使用需求




总结
1、REDIS的LIST内部是一个列表,所以在追加和获取数据上效率很高为O(1),但是其它操作的效率是O(N),而LRANGE的效率是O(S + N),因此LIST虽然可以依靠的LRANGE和列表序号实现分页查询,但是效率不高。
2、LIndex可以用于获取列表内的元素,但是一次只能获取一个元素(不从列表删除对应内容);LRANGE一次则可以获取多个元素(不从列表删除对应内容);因此当队列内容过多时,可以用于debug调试,查看内部数据的详细情况。
3、使用列表做索引,还有一个很大好处,就是数据结构简单。如果使用ZSET做分页查询,确实可以做大分页查看,但是ZSET本身有其限制的地方,导致如果查询内容不是KEY-SCORE类型,则另外还需要一个结构,以便实现查询。
2、基于ZSET的分页缓存实现
