文章 2025-02-20 来自:开发者社区

【分布式锁通关指南 03】通过Lua脚本保证redis操作的原子性

引言 在02篇的小结中,为大家指出了我们处理锁误删的代码中存在的问题,但其实只要使用redis来做分布式锁,如果你不能把操作一步完成,不管什么场景可能或多或少都会出问题。所以引出了本篇的内容。在03篇中,我会为大家讲解如何通过Lua脚本来保持redis指令的原子性,从而避免并发问题。友情提示:本篇...

【分布式锁通关指南 03】通过Lua脚本保证redis操作的原子性
问答 2024-08-28 来自:开发者社区

用户执行脚本主要依赖什么命令族?Redis对Lua脚本的持久化和主从复制状态是怎样的?

Redis 7.0之前,用户执行脚本主要依赖什么命令族?Redis对Lua脚本的持久化和主从复制状态是怎样的?

问答 2024-06-22 来自:开发者社区

Lua脚本在Redis中执行有哪些优势?

Lua脚本在Redis中执行有哪些优势?

文章 2024-04-08 来自:开发者社区

lua脚本在redis中的使用场景

一、概述 1、什么是lua脚本 Lua是一种轻量小巧的脚本语言,用标准C语言编写并以源代码形式开放。 其设计目的就是为了嵌入应用程序中,从而为应用程序提供灵活的扩展和定制功能。因为广泛的应用于:游戏开发、独立应用脚本、Web 应用脚本、扩展和数据库插件等。 比如:Lua脚本用在很多游戏上,主要是Lua脚本可以嵌入到其他程序中运行,游戏升级的时候,可以直接升级脚本,...

lua脚本在redis中的使用场景
文章 2024-04-06 来自:开发者社区

lua脚本做redis的锁

  package com.wosai.upay.job.biz; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.redis.cor...

lua脚本做redis的锁
文章 2024-01-10 来自:开发者社区

使用lua脚本操作redis

redis中实现事务有两种方法:1.WATCH监视键的变动,然后MULTI开始事务,EXEC提交事务WATCH key [key…]:监视一个或多个键,如果在事务执行之前被修改,则事务被打断。MULTI:标记一个事务的开始。EXEC:执行事务中的所有命令。DISCARD:取消一个事务,放弃执行事务中的所有命令。WACTH检测 key 的变动,若在事务执行中,key 变动则取消事务,在事务开启前调....

使用lua脚本操作redis
文章 2024-01-07 来自:开发者社区

通用脚本安装redis

安装redis脚本并启动。#! /bin/bash## 下载rediscd / wget http://download.redis.io/releases/redis-7.2.2.tar.gz tar -zvxf redis-7.2.2.tar.gz mv /root/redis-7.2.2 /usr/local/redis cd /usr/local/redis make &&...

文章 2023-12-25 来自:开发者社区

「提效脚本 redis」 使用Lua批量删除key

在redis里面可以使用keys aa* 进行匹配所有的key,却没办法直接删除所有匹配的key。所以可以使用lua脚本进行增强。以删除 suggest* 开头的key为例。eval "local keys = redis.call('keys', 'suggest*') for _, key in ipairs(keys) do redis.call('del', key) end" 0...

文章 2023-11-14 来自:开发者社区

【实战】使用Lua脚本怎么清理redis中的数据【实战】使用Lua脚本怎么清理redis中的数据

概述首先我们通过hiredis 向redis 中写入了数据,这里我们主要以测试为目的,所以,Key 值设定为毫秒级时间戳。但是当我们测试完成之后,需要验证实际情况,这里我们直接使用redis-cli 登录数据库看看。本次测试完成,接下来要结合业务开始测试,需要清理数据库,但是一条一条的删除太慢了。这里给出lua 脚本,以及使用方式。接下来为具体实际内容。详述通过消息队列接收数据,并向redis中....

文章 2023-11-14 来自:开发者社区

RedisTemplate执行lua脚本在Redis集群模式下报错EvalSha is not supported in cluster environment.

RedisTemplate执行lua脚本在Redis集群模式下报错:EvalSha is not supported in cluster environment.执行方法,Redis是单节点执行成功但是集群下报错public boolean unlock(String key, String value) { Long result = template.execute(redisSc...

本页面内关键词为智能算法引擎基于机器学习所生成,如有任何问题,可在页面下方点击"联系我们"与我们沟通。

产品推荐

云原生多模数据库Lindorm

Lindorm是适用于任何规模、多种类型的云原生数据库服务,支持海量数据的低成本存储处理和弹性按需付费,兼容HBase、Solr、SQL、OpenTSDB等多种开源标准接口,是互联网、IoT、车联网、广告、社交、监控、游戏、风控等场景首选数据库,也是为阿里巴巴核心业务提供支撑的数据库之一。

+关注