首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Golang中的原子和并发安全Redis事务

Golang中的原子和并发安全Redis事务
EN

Stack Overflow用户
提问于 2019-03-11 13:13:27
回答 1查看 705关注 0票数 0

我试图在我的go程序中实现以下逻辑:

代码语言:javascript
复制
def action:
 1. GET the value of KEY from Redis
 2. SET the value of KEY to 0

我使用go-redis模块与我的Redis实例进行交互。

我熟悉Redis事务,但我似乎找不到一个不错的文档或示例,说明如何在Golang中以并发、安全和原子的方式实现所需的一组操作。

问题:我如何实现定义的action,并确保步骤1和步骤2之间不会发生其他action操作,即使我从不同的go例程访问Redis实例?

EN

回答 1

Stack Overflow用户

发布于 2019-03-11 13:16:54

您可以使用单个Redis命令GETSET来完成这一任务,该命令将是原子的:

代码语言:javascript
复制
GETSET KEY 0

更广泛地说,在确保Redis原子性方面没有任何具体规定。您只需使用熟悉的Redis事务处理工具(通过Go Redis客户端)即可。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55102652

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档