开发者社区> 问答> 正文

关于redis如何实现多字段排序 的问题

redis 有sort set数据结构,但仅仅只能安装score排序,
我想实现不仅按照score排序,还需要按照其他字段排序,
比如按照热度,发布时间排序,应该怎样实现?
就是类似实现mysql中的 select * from topic order by hot desc ,createtime desc这种排序

环境: mysql(数据库) + redis(缓存)

场景: 论坛帖子列表
带分页

需要按照时间/热度/等排序

需要在列表就显示标题跟内容

并发量: 峰值可能会到几万,但持续时间可能也就一天,并且读写都可能比较频繁

展开
收起
爵霸 2016-03-09 09:05:05 2817 0
1 条回答
写回答
取消 提交回答
  • redis本身 机制 并不是热衷于 比较复杂的排序,
    不过 可以 先做好排序工作,然后存放在 redis列表中,将列表裁剪为指定长度,比如 1000条,Redis只需要保存最新的1000条,每次需要获取最新帖子或者评论的项目范围时,再查库获取放到缓存中

    2019-07-17 18:55:17
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
Redis集群演化的心路历程——从2.x到3.0时代 立即下载
微博的Redis定制之路 立即下载
云数据库Redis版的开源之路 立即下载