楼主的问题是如何解决写入数据库压力大的问题吧? 不是写哪个表的问题? 并发量有多大?高峰低峰?实时性要求有多强? 1.不写入数据库, 写入缓存 memcached redis, 然后再异步持久 2.写入数据库, 数据集群优化, 分库分区什么的,或者改用非关系型数据库 nosql 3.用队列来抗压 具体还要看实际业务场景,然后逐步调优的
我们现在的点赞和取消赞,我们前面放redis ,中间放activemq,后面放数据库,压力到不是问题,点赞时,首先检查该用户是否对该内容点过赞,如果有,就提示你点过赞了,如果没有那么在redis记录用户和该内容的赞关系,然后发消息到activemq 中去处理后续事情,但是现在遇到一个问题,如果我对一个内容点赞了,发消息到后面去处理,但这个时候,假如因为什么事情卡住了,或者处理慢了,用户马上又取消了赞,也发消息到后面去处理了,但这个时候的顺序就出现问题了,我取消赞的逻辑先走完,赞的逻辑在去处理,那这样问题就出现了,我本来对该条数据已经取消赞了,可能数据库了还记录着你对该条内容是点赞的状态,我现在有一种方案去解决这种问题,就是从赞队列取数据处理时,把该条数据放入一个redis set 中,处理完了在从set 中删除了,那么取消赞队列的时候去检测 刚刚队列是否有该内容,如果有说明我还没处理完,那么取消暂时等待,如此。但我总感觉此中方案不理想,请问各位是否有好的方案。
哪些点过赞最主要的作用是记录谁点过什么资源的赞,点赞不可重复,另一个作用就是做个记录。你就把点赞记录做个列表给用户看?
点赞的功能是加哪里? 帖子,图片? 能不能取消上面的两个表 在帖子的表里面加一个字段,点赞数量 上记录锁 另一个是某一个对哪些点了赞 这个是用户点了哪些赞 这个表很恐怖 而且上千以后,分页什么。 你有耐心看完吗?
25,980
社区成员
4,366
社区内容
加载中
试试用AI创作助手写篇文章吧