用户活动日志的正确方法是什么,比如Facebook如何做到这一点并且真的很快。我有一个客户的网站,它有活动记录用户的活动并显示给他/她的朋友/家人/粉丝,但它很慢,我们愿意在数据库中进行更改,如果它有助于改善用户交互性并做正确的日志。我肯定很多人已经研究过它,但我找不到它的任何链接,这表明它是如何正确完成的,所以我也可以实现它。有什么帮助吗?
期望的活动输出
答案 0 :(得分:1)
嗯,Facebook的架构具有很高的可扩展性,它们对数据请求有很多“前门”,并且有一些真正的力量可以有效地处理数据。
第一个问题是,这个应用程序应该处理多少并发用户? &lt; 100,只需确保您的数据层索引良好,并且您正在进行“智能”查询(使用索引标准准确获取显示页面所需的数据,不多也不少)。如果要为查询返回大量数据,请在查询中对其进行chunkify(SELECT TOP 25 ... FROM Activity WHERE Activity.Date < <date of the last record of the last page you retrieved>
)低数百,考虑复制服务器以分离非实时或不常使用的任务,或者仅仅进行负载平衡。数百人,开始考虑具有分布式表和批量交易传送的服务器集群。更重要的是,你超越了我在企业架构方面的专业知识。
任何情况下你的第一步: