一般的论坛中,都会有把最后新回复的文章置顶的做法,一般也都是在article表中增加一个字段,用来记录最后回复的时间,然后显示的时候按照这个字段来排序。
但是比如并发很大,对于一篇文章的回复特别多的时候,就会同时update数据库中一个表的一条记录,这样的做法难免会产生一些问题,比如说数据库锁表啦之类的
请问还有什么比较好的做法么?
数据库
论坛
大数据量
WEB
架构
------解决方案--------------------
缓存吧,在缓存中排序,然后再读取,然后找个时机才把回复日期同步到数据库中
------解决方案--------------------
可以把每条回复的 id 单独保存,它自然就是按时间先后排序的。显示时按照此表反序取 id,然后找相应记录就行了。