我想从Redis中删除所有与SomePrefix *匹配的键。可能吗 ? 我只看到m_connectionMultiplexer.GetDatabase()。KeyDelete()但不是库中的KeyMatch()或GetAllKeys()。
最好不要使用Lua脚本,例如link by Leonid Beschastny
我希望在应用程序的开发状态的Web应用程序初始化时使用它。
答案 0 :(得分:2)
SE.Redis直接模仿服务器公开的功能。服务器没有“与此模式匹配的删除键”功能。它确实具有“扫描匹配此模式的密钥”(通过GetServer().GetKeys(...)
),并且具有“删除此密钥/这些密钥”(通过GetDatabase.KeyDelete(...)
)。您可以批量迭代匹配的键,依次删除每个批次。因为您可以管道请求,所以不需要支付每批的延迟。
作为替代实现:按数字数据库(select
)或服务器对数据进行分区,并使用flushdb
/ flush
。