Python中文
首页
教程
问答
标签
搜索
登录
注册
在Redis中执行字典的并发更新
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>我使用<code>Redis</code>作为不同应用程序发行版之间的集中内存数据存储</p> <p>当我的应用程序的所有发行版都在同一个键上运行时,我担心会出现并发的情况。举个例子:</p> <pre><code>THIS_DISTRIBUTION_NAME = "Alpha1" alive_distributions = redis.hmget('alive_distributions') # {"Charlie1": 1623234874} alive_distributions[THIS_DISTRIBUTION_NAME] = int(time.time()) # {"Charlie1": 1623234874,"Alpha1": 1623234875} redis.hmset('alive_machines', alive_distributions) </code></pre> <p>如果在<em>Alpha1</em>的<code>hmget</code>和<code>hmset</code>操作之间更新<em>Charlie1</em>,则会导致数据不一致</p> <p>如何在没有并发的情况下执行安全的、类似事务的字典更新</p>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p>您感兴趣的操作可以包装在MULTI/EXEC事务中,以确保两个字段都已更新或没有更新。 您需要的命令itslef是zadd命令。事实上,使用zadd comand,您可以在一段时间后自动对预设值进行索引(更新)</p>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
如何在乒乓球比赛中预测球的轨迹,对于AI球拍预测?
3 回答
如何在乒乓球游戏中阻止球
10 回答
如何在乘法和模中不乘空间?
1 回答
如何在乘法和除以2个不同的数字之间进行交换?
8 回答
如何在也是数据一部分的单个字符上拆分大字符串
10 回答
如何在乾草堆中找到針,有更好的解決方案嗎?
9 回答
如何在事件wxWidgets中传递自定义数据
9 回答
如何在事件中使用lambda i=i?
3 回答
如何在事件中心只接收最近的数据
7 回答
如何在事件发生之前保持云函数运行?
4 回答
如何在事件发生后使页面重定向到同一页面
6 回答
如何在事件回调之间保持python生成器的状态
9 回答
如何在事件处理程序(pythonsocket、sphinx)中保留docstring
3 回答
如何在事件处理程序中更改wxRichTextCtrl的光标位置?
1 回答
如何在事件处理程序中访问外部对象?
9 回答
如何在事件循环中将协程打包为正常函数?
3 回答
如何在事件循环之外运行协同程序?
5 回答
如何在事件循环结束时为并发未来的所有线程调用类方法?
4 回答
如何在事件文件中只保留一份摘要?
3 回答
如何在事件模板中添加事件
3 回答