脚本逻辑:

(图片来源网络,侵删)
RScript script = RedissonClient.getScript(); final string scriptText = """ local value = redis.call('lpop', KEYS[1]); if value then redis.call('rpush', KEYS[2], value); return value; end return nil; """; String value = script.eval( RScript.Mode.READ_WRITE, // 脚本包含写入操作 scriptText, RScript.ReturnType.VALUE, list.of(REDIS_KEY_QUEUE1, REDIS_KEY_QUEUE2) // 对应脚本中的KEYS数组的元素 );

(图片来源网络,侵删)