例如新浪微博的点赞系统,点赞一条微博之后不能重复点赞,那么实现这一功能必然要将用户id存储起来。面对新浪微博这样的大数据量,该如何存储点赞信息呢?我实验了一下,新浪微博几年前的微博依然不可以重复点赞,这样看起来的话,新浪微博应当是永久存储了用户信息。
有没有什么好的方案设计呢?
例如新浪微博的点赞系统,点赞一条微博之后不能重复点赞,那么实现这一功能必然要将用户id存储起来。面对新浪微博这样的大数据量,该如何存储点赞信息呢?我实验了一下,新浪微博几年前的微博依然不可以重复点赞,这样看起来的话,新浪微博应当是永久存储了用户信息。
有没有什么好的方案设计呢?
5 回答3.2k 阅读✓ 已解决
3 回答3.6k 阅读✓ 已解决
2 回答2.8k 阅读✓ 已解决
2 回答3.1k 阅读
5 回答1.4k 阅读
3 回答1.2k 阅读✓ 已解决
2 回答2k 阅读
我觉着你如果考虑并发很高的情况,可以先在redis缓存点赞记录,记录的格式可以这样:uid+点赞目标的id,如果缓存中有该key则不能重复点赞,同时你也可以在生成该缓存记录的时候将该点赞记录固化至数据库