我正在使用Azure搜索在Azure Redis缓存上工作,但我无法找到有关Redis缓存并发性的任何明确说明。
情况就是这样。在覆盖现有缓存项目时,是否可以在同一时间读取项目?如果是,Redis Cache如何管理这个?它是否会锁定该项目,直到它可用或是否提供旧版本的项目?
顺便说一句,我使用的是StackExchange.Redis客户端。
答案 0 :(得分:6)
Redis是单线程的,因此所有操作都是原子的。如果有更新/删除,则在操作完成之前没有其他任何人可以读取该密钥。更多细节 - single-threaded-nature-of-redis