我是一个构建 Java Web 应用程序的团队的一员,其中用户将在关系数据库中搜索结果,然后在浏览器中以表格方式查看它们。然后,用户还可以选择随后在单独的浏览器窗口中查看相同的结果集(或这些结果的子集),例如使用图表工具。换句话说,我们需要让用户能够在以后(最多 24 小时)可视化相同的结果集记录。
由于系统上的搜索会占用大量资源并且只是出于良好的常识,因此我们希望有一种干净的方式来缓存每个结果集,以便以后可以从内存(RAM 或磁盘)中提取它。 我们正在寻找一种做这种缓存的好方法,我们相信其他人之前已经这样做过,我们更喜欢使用最佳实践或框架,而不是从头开始构建这样的东西。服务器将有大量 RAM,但由于可能有数百人使用该系统,我们可能需要一种方法,先存储到 RAM,然后如果 RAM 已满,也可以缓存到硬盘。
我相信坚持作为 Java 对象是最有意义的,但我愿意接受更好的建议。我们想要一种供应商中立的方法,这样如果数据库团队选择稍后更换供应商,我们就不会被专有解决方案所束缚。谢谢。