如何在stackoverflow上计算1000万个问题?

时间:2015-08-31 12:26:46

标签: javascript php mysql count stackexchange-api

Stackoverflow正在庆祝1000万个问题。恭喜!

向我们提供以下链接:https://stackoverflow.com/10m

显示3个计数器,每个计数器的数量快速增加而不是静止。

但是,我没有看到任何AJAX请求显示每个计数器的最新结果。

我在论坛中也有这样的计数器,但为了获得最近的帖子数量,我每3秒做一次AJAX请求,运行查询SELECT MAX(id) AS total_posts FROM forumposts来显示。

我知道,这不是我们拥有的最佳解决方案,如果删除帖子,它将不再正确。使用SELECT COUNT(id)命令太慢了,因为我们还有超过1000万个帖子。

那么,Stackoverflow如何在没有任何请求的情况下显示其计数器的增加?对我来说这似乎是一个更好的解决方案,我也希望将它用于我们的论坛。

1 个答案:

答案 0 :(得分:7)

它使用websockets。您可以从网络选项卡中查看它。 wss://qa.sockets.stackexchange.com/从请求中,它看起来确实每次都得到一个总计数。 enter image description here

SQL计数缓慢 穷人改善绩效的方法是通过创建一个跟踪行数的表来自己跟踪统计数据。每次删除或添加新记录时,都要确保更新该表格。在此之前,请对索引和以下问题进行一些研究