公寓项目场景:热度排序

打印 上一主题 下一主题

主题 868|帖子 868|积分 2614

1. 业务场景

热度排行榜,一个随处可见的业务场景(如:游戏热度排行榜,电商商品热度排行榜,歌单热度排行榜),那么公寓房间热度排行榜也不破例,为解决该公寓房间热度排行榜场景,我基于Redis中的有序集合(ZSet)进行处理。
2. 业务思路

排序统计场景设计思想(排行榜)


  • 2.1 数据结构设计:
创建ZSet集合,将每个公寓作为一个有序集合,而公寓中的每个单独房间作为集合中的元素,并将每个房间初始化权重值


  • 2.2 记任命户行为:
当有效户欣赏,收藏,预约房间时,该房间按不同权重进行加分,如欣赏+1分,收藏+5分,预约+10分,并且刷新房间过期时间


  • 2.3 实时更新热度:
每当有效户行为触发时,ZSet调用ZINCRBY对相应房间进行热度分值更新


  • 2.4 热度排行生存:
利用ZRANGE下令将公寓ZSet当前排序顺序从高到低的将房间ID缓存,并设置过期时间为1小时(各大软件排行榜常用本事,每一小时更新排行榜数据)


  • 2.5 热度排行展示:
每当用户查询公寓时按该集合顺序展示房间信息


  • 2.6定期清理缓存:
对公寓房间设置过期时间,当房间长时间没有效户行为触发时redis自动删除房间缓存
设置定时任务,每隔一段时间扫描房间热度,当低于设置的热度阈值时删除房间缓存

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

篮之新喜

金牌会员
这个人很懒什么都没写!
快速回复 返回顶部 返回列表