大数据量下如何存储用户点赞信息?

例如新浪微博的点赞系统,点赞一条微博之后不能重复点赞,那么实现这一功能必然要将用户id存储起来。面对新浪微博这样的大数据量,该如何存储点赞信息呢?我实验了一下,新浪微博几年前的微博依然不可以重复点赞,这样看起来的话,新浪微博应当是永久存储了用户信息。

有没有什么好的方案设计呢?

阅读 12.9k
3 个回答

我觉着你如果考虑并发很高的情况,可以先在redis缓存点赞记录,记录的格式可以这样:uid+点赞目标的id,如果缓存中有该key则不能重复点赞,同时你也可以在生成该缓存记录的时候将该点赞记录固化至数据库

如果要持久化的话,可以用mongodb存储点赞信息。对用户id和点赞对象id建索引。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题