有大佬指点一下热度排行榜 数据访问量 怎么实现比较好吗
java吧
全部回复
仅看楼主
level 9
木叶舞王
楼主
之前毕设弄了个电影网站,现在想弄个电影热度排行榜就是统计电影访问量,比如 每小时 日周月排行榜。按热度显示电影。这样数据库怎么设计比较好呢 。
2022年06月16日 04点06分
1
level 1
free小白脸先生
用redis吧
2022年06月16日 05点06分
4
木叶舞王
redis方面我有考虑过了,但是持久化的时候 需要保存到mysql中,不知道咋设计好点
2022年06月16日 05点06分
木叶舞王
不知道怎么设计 mysql的表 会好点
2022年06月16日 05点06分
level 6
苏天昕👻
Redis+定时任务
2022年06月16日 05点06分
5
木叶舞王
redis方面我有考虑过了,但是持久化的时候 需要保存到mysql中,不知道咋设计好点
2022年06月16日 05点06分
木叶舞王
不知道怎么设计mysql的表
2022年06月16日 05点06分
level 7
叽里呱咕噜噜♤
redis有序集合
2022年06月16日 05点06分
6
木叶舞王
redis方面我有考虑过了,但是持久化的时候 需要保存到mysql中,不知道咋设计数据表会好点
2022年06月16日 05点06分
level 9
木叶舞王
楼主
各位大佬,现在是打算用redis+定时任务 实现,定时刷新访问量到mysql里面,不知道怎么设计mysql的表 会好点,可以让电影表和访问量的表一对一吗
2022年06月16日 06点06分
7
贴吧用户_5NtW3PX
movieId,count,type
2022年06月16日 08点06分
biu啵啵
访问的时候,推送一条消息到消息队列。另起一个模块负责消费队列内容,然后统计结果,最后把结果写入数据库,或者写给redis,key设计成 日期-电影id,如果是热度排行榜,就按小时设计key,统计时候value慢慢加上去就可以了。
2022年06月16日 10点06分
木叶舞王
@biu啵啵
好的 谢谢
2022年06月16日 11点06分
木叶舞王
@贴吧用户_5NtW3PX
谢谢 我在琢磨下怎么搞
2022年06月16日 11点06分
level 8
🙈方认证OP
扔redis里,隔段时间落库就行了
2022年06月16日 07点06分
8
木叶舞王
我想弄 小时日周月 这样时间段的,请问 mysql 的表应该怎么设计 比较好呢
2022年06月16日 08点06分
🙈方认证OP
@木叶舞王
redis里怎么存的就怎么放到mysql吧,省心
2022年06月16日 08点06分
木叶舞王
@🙈方认证OP
这样不太好吧
,我打算好好弄下这个项目拿去面试
2022年06月16日 08点06分
🙈方认证OP
@木叶舞王
没人管你这个吧,把方案做好就行
2022年06月16日 09点06分
level 8
朝酒晚舞夜苏歌
redis热点数据加淘汰机制
2022年06月16日 10点06分
9
level 12
几米ლ
可以用flink
2022年06月16日 11点06分
10
level 14
贴吧用户_0GQUWeE
我正好做过类似的,表设计得根据你的需求来。个人觉得这种业务存MySQL只是为了个容灾做个额外持久化罢了,接口直接查redis zset就行,真要落具体热度数据为了将来做报表也不可能存mysql的
2022年06月16日 22点06分
11
贴吧用户_0GQUWeE
如果换作我设计,我可能会将mysql当作自己的redis rdb来用,每5分钟开定时任务读key获取排行榜的快照数据存表里,redis因为意外崩了啥的再去查mysql
2022年06月16日 22点06分
1