gpt4 book ai didi

java - 并发映射按具有快速增量值操作的值排序

转载 作者:搜寻专家 更新时间:2023-11-01 03:14:01 25 4
gpt4 key购买 nike

我有一个 Web 应用程序,我需要在其中跟踪“最受欢迎”(访问量最大)的文章。该应用程序中的大多数页面(包括文章页面)在侧边栏中显示“最流行”列表,因此该列表将被经常检索。另一方面,文章的访问也很频繁(大约 1/2 的页面访问是对文章页面的访问)。

跟踪访问并能够选择 N 篇访问最多的文章的最佳方法是什么?据我所知,它应该是一个并发 map articleId->visitCount,它按值 (visitCounts) 排序,我可以在其中快速(和线程安全地)增加 visitCount 并期望 map 重新排序。

最佳答案

对于 Web 应用程序,最好将其存储在数据库中。创建一个数据库,其中包含文章 ID 字段和访问次数字段。按访问次数索引表。每当查看文章时,添加记录或增加现有记录。当您需要查看最受欢迎的列表时,只需查询该表即可。

数据库通常是网络应用程序中数据存储位置的最佳选择。

在这种情况下,数据库会根据访问次数对表进行索引。这使得插入和更新速度变慢了一点,但是数据库就是为完成这项工作而设计的,所以它不会太糟糕。由于维护的索引,此数据的检索将始终非常快。

关于java - 并发映射按具有快速增量值操作的值排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3806214/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com