redis - 为 Redis 中的键添加版本/风格
问题描述
我们在redis中存储数据的路径如下:
KEY: `/pathOfUniqueAsset/v11/`
VALUE: `/disk1/pathOfUniqueAsset/path/v/11/`.
如您所见,代表版本的 v 会随着时间的推移而增长。我想知道是否有办法存储flavors
/versions
的键/值对?
解决方案
你想达到什么目的?您需要保留旧版本吗?如果不是,请覆盖密钥。如果是的话,密钥的“版本”会给你什么?您已经从密钥中知道了您的版本。如果您将密钥安排为 pathOfUniqueAsset.v11,您可以稍后发布KEYS pathOfUniqueAsset.*
(或更好SCAN
)以获取所有版本。这样你就可以EXPIRE
单独设置了。如果您要使用HSET
@ItamarHaber 建议您只能手动删除值,但迭代集合比KEYS
查找快得多(编辑:实际上,它取决于某些因素,主要是其他键的数量)。
如果您希望将每个版本的资产列表保存在一起,则可以使用与此版本关联的所有密钥的专用集。喜欢
SET /pathOfUniqueAsset/v1 ...
HSET assets.v1 pathOfUniqueAsset /pathOfUniqueAsset/v1
推荐阅读
- android - 活动生命周期回调没有完成执行?
- javascript - Javascript - 输入验证 - 我可以检查字符 x 是否为数字,字符 y 是否为字母
- javascript - Electron js不显示来自Mysql的数据
- internet-explorer - 由于特殊字符,模板在 IE 中不起作用
- c# - 当 InvoiceItem 项目更改时跟踪 Invoice 表上的 Amount 字段的最佳方法?
- python - 如何更改 pandas DataFrame 的索引类型?
- python - pybind11 目录结构问题
- assembly - 写入没有段寄存器的地址
- c# - UWP:以编程方式提高按键
- javascript - 为什么 [2,3] 中的 1 在 javascript 中为真,而 [2,3] 中的 2 为假