关注
点赞排行榜也可以用MySQL,不过你要顾及到性能问题、写入延迟、数据一致性等问题,其实在点赞方面还是比较建议考虑使用缓存;
如果使用Redis,确实会占用较多的内存。如果关注内存的使用情况,可以考虑以下两种方案来减少内存占用:
1.用Redis的Bitmaps数据结构来保存点赞详情。然后从Bitmaps的数据结构角度向面试官阐述如何解决内存占用,这里简单说一下,Bitmaps是以位的形式存储数据,可以有效地压缩存储空间。
2.使用Redis的HyperLogLog数据结构来统计点赞数量。
如果点赞数量非常庞大,可能会导致内存占用过大。优化的方案可以从下面几点来考虑:
1.使用redis分片集群,实现分布式存储,将点赞信息分散到多个Redis节点上,减轻单个节点的负载压力。
2.设置合理的过期时间或定期清理过期的点赞数据(因为其实对于一个点赞详细来说,我们应该进行取舍,其实前端页面只需要展示部分数据,要么保存最新的一批点赞详情,要么保存一批最旧的--也就是最先点赞的人),避免占用过多的内存空间。
这是大致的一些思路吧,正如一楼老哥说的,技术不是说一个好一个不好,技术是需要选择的,通常选择一个技术会解决另外一个技术的问题但也带来了新的问题,我认为面试官抛出这么一个问题其实要的是我们的思路,在面试中如果有一个比较好的思路并分开深入阐述它的原理,我认为对于面试来说也是一个不错的加分点。
个人瞥见,如有问题,也请指出,多谢。
查看原帖
27 3
相关推荐
点赞 评论 收藏
分享
12-08 17:31
太原理工大学 嵌入式工程师 点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 2025年终总结 #
145586次浏览 2498人参与
# 秋招落幕,你是He or Be #
2907次浏览 74人参与
# 应届生进小公司有什么影响吗 #
108965次浏览 1116人参与
# 比亚迪工作体验 #
69895次浏览 254人参与
# 你面试体验感最差/最好的公司 #
2776次浏览 56人参与
# 工作中听到最受打击的一句话 #
2362次浏览 61人参与
# 大厂VS公务员你怎么选 #
70791次浏览 658人参与
# 重来一次,你会对开始求职的自己说 #
2759次浏览 70人参与
# 一人说一个提前实习的好处 #
3099次浏览 67人参与
# 团建是“福利”还是是 “渡劫” #
3878次浏览 109人参与
# 实习没事做是福还是祸? #
7951次浏览 135人参与
# 如何排解工作中的焦虑 #
243427次浏览 2238人参与
# 从顶到拉给所有面过的公司评分 #
144763次浏览 518人参与
# 今年你最想重开的一场面试是? #
1307次浏览 24人参与
# 你小心翼翼的闯过多大的祸? #
6696次浏览 107人参与
# 联影求职进展汇总 #
123774次浏览 781人参与
# OPPO求职进展汇总 #
755816次浏览 5390人参与
# 互联网公司爆料 #
158533次浏览 724人参与
# 产品实习,你更倾向大公司or小公司 #
189042次浏览 2052人参与
# 秋招结束之后的日子 #
113880次浏览 1038人参与
查看15道真题和解析