建议调整帖子排序算法,避免挖坟诈尸
发布于 8 年前 作者 libook 4197 次浏览 来自 分享

经常遇到被挖坟的帖子在帖子第一页诈尸,站长考虑调整一下帖子排序算法?

比如按发帖时间以月份排序,有人挖坟也只会排到那一月的第一页,而不是全局的第一页。

或者每个帖子都求回帖时间的平均值,如一个帖子的时间表如下: 楼主发帖时间:2015年4月1日=1427817600000 回复1发帖时间:2015年4月2日=1427904000000 回复2发帖时间:2015年4月3日=1427990400000 回复3发帖时间:2017年4月1日=1491148800000 平均值:(1427817600000+1427904000000+1427990400000+1491148800000)/4=1443715200000 然后按照平均值排序,这样随着一个坟贴受到越来越多的人重新关注,也能逐渐浮动到全局的第一页。

抛砖引玉。

16 回复

加个 帖子关闭功能

我在想这个sql怎么写😂

@liygheart 其实也不需要每次现算,那样性能开销可能会很大,只需要每次回帖的时候计算一下并update到主贴数据中就可以了,建个索引,查询直接排序就行了。

@libook 这是个好办法

過猶不及,如果是真有和好帖子討論起來了呢?

每个回复时间都计算太复杂了, 就两个变量 发贴时间+回复数,分别设置权重比例,发贴时间早回复多的基本都是坟贴

觉得没必要,这些都是问题的讨论,时间长久无关,可以学习啊

挖坟才是一个很有用的功能? 一看就是没做过论坛的人

还有帖子搜索功能

@captainblue2013 @HeroBoyluck 我提供的第二种方案是可以逐渐把重新活跃的老帖子提到排序前面的。 只是觉得现在这种一回复就马上提到第一个顺序的机制太强,并不是一种特别客观的反应社区活跃程度的方式。好多时候回复完一个帖子才知道帖子是两年前的一个过时的技术贴,新帖子被旧帖子挤到后面去了。

本来就没什么注意力,不如简单按事件排好。

确实,感觉每次看到的都是几年前的帖子

@liygheart CNode 用的不是 SQL 系数据库。

@xadillax 我知道呀,但想用sql写出来,还是有点难度的吧

回到顶部