java - 生成一个唯一的 id 以存储在缓存中

标签 java caching key-value

我正在维护一个具有唯一 id 和相应值的缓存,以便在 Y 类中检索。这个唯一 id 是 Y 类知道并检索的内容。缓存值配置为在 10 分钟后过期。

我能想到的解决方案是生成一个增量值作为uniquq id。对于每个新条目,都会有一个新的 id (+1)。但是,这将是一个永远不会重置的值 - 尽管 10 分钟后将不再需要特定缓存元素的值

如何最好地生成这个唯一的 ID?

最佳答案

当您添加 1 时,您还需要注意线程安全。 更好地使用 java.util.UUID 之类的东西 并且不关心任何重置...

但说实话,缓存键应该从缓存内容创建 - (例如基于请求参数的哈希函数),因此相同的参数将获得相同的缓存 ky - 因此您将从缓存中检索值...

关于java - 生成一个唯一的 id 以存储在缓存中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49174179/

相关文章:

java - 使用 Java 8 DateTimeFormatter 和西类牙月份名称进行解析

java - cache2k cachesource 使用 mysql 作为后端

php - 在云上托管的 Laravel 应用程序上配置缓存服务器

ruby-on-rails - 设置一个集合缓存键而不需要多次后续查询

javascript - 将查询字符串传递到 Google 发布商代码中

ruby - 检测哈希中是否存在键值对

java - 使用正则表达式同时强制执行序列和分组?

java - sun.misc.BASE64Decoder 在 java 应用程序中显示错误

java - BerkeleyDB 写入性能问题

java - 使用 Thymeleaf 作为模板的 Spring Boot 发送电子邮件 - 配置不起作用