根据这个线程,如果我想从 Java 中使用 Redis,Jedis 是最好的选择。
但是,我想知道是否有任何库/包提供与 Redis 中已经存在的类似高效的集合操作,但可以直接嵌入到 Java 应用程序中,而无需设置单独的服务器。(即,使用 Jetty 作为 Web 服务器)。
更准确地说,我希望能够有效地执行以下操作:
- 有一大组 M 个用户(M 个事先不知道)。
- 有一大组 N 项。
- 我们希望用户检查项目,一次一个用户/项目,这会产生一个存储结果(在普通数据库中)。
- 每次用户到达时,我们都希望为该用户分配该用户以前未见过的现有结果数量最少的项目。当我们只关心让所有项目查看大致相同的次数时,这会为所有到达的用户生成项目的近似循环分配。
以上以并行方式发生。当 M 和 N 很大时,Redis 比 SQL 查询更有效地完成上述操作。有没有办法使用比启动 Redis 服务器更轻量的可嵌入 Java 库来做到这一点?
我认识到可以使用 Java 的并发库编写一堆代码,这些代码大致近似于此(在某种程度上,我已经做到了),但这并不是我在这里寻找的。