美文网首页
Redis读书笔记

Redis读书笔记

作者: zhaosyong | 来源:发表于2020-05-06 22:53 被阅读0次

Redis分布式锁

1.分布式应用进行逻辑处理时经常会遇到并发问题。为了保持系统操作原子性,需要进行分布式锁的使用

1.1 加锁

分布式加锁指令:setnx (set if not exists)

setnx lock:codehole true

del lock:codehole
1.2 锁加上过期时间expire 超时问题

为了释放的锁的原子性,锁key可以用随机数或者uuid等唯一性
分布式加锁指令:set lock uuid true ex extimer nx

set lock:codehole true ex 5 nx

del lock:codehole

释放锁的原子性

if redis.call("get",KEYs[1])==ARGV[1] then
  return redis.call("del",KEYS[1])
else
  return 0
end
1.3.Redission封装 三步实现分布式锁

redission实现原理
是通过Lua脚本 保持指令的原子性。

1.redission.getLock(lockKey) //获取锁
2.redission.lock();//可配置参数 设置过期时间和超时时间等 trylock()
3.redission.unlock();//  释放锁

借用一张图:图片来源:https://www.jianshu.com/p/2d3bf2ff2315

image.png
1.4.Redlock实现redis集群的锁

redlock可以解决redis集群的分布式锁的主从同步问题,但是性能不太好。

相关文章

  • 《redis设计与实现》 读书笔记

    《redis设计与实现》 读书笔记 《redis设计与实现》 作者:黄健宏 一、前言 什么是redis:Redis...

  • 《Redis实战》读书笔记

    《Redis实战》读书笔记 Redis的重要性不必多说,所以我将从0开始学习Redis,并记录下来。我将把《Red...

  • Redis的读书笔记 第一章:初识Redis

    Redis的读书笔记系列的书是《Redis开发与运维》,这本书站在开发及运维的角度介绍Redis。为了更好学习Re...

  • 《Redis实战》—读书笔记—第2章

    《Redis实战》—读书笔记—第2章 用redis来控制session会话的数量 时间:2017年10月02日03...

  • redis数据结构

    引言 从本次开始,对Redis设计与实现进行阅读及相关读书笔记的记录。Redis版本为3.0 数据结构 简单动态字...

  • redis入门指南第二版读书笔记

    redis入门指南第二版读书笔记 作者:李子骅 读者:张剑 Redis是以高性能著称的内存数据库,通常用来做缓存服...

  • redis设计与实现读书笔记

    参考文档:redis设计与实现读书笔记 第二版 一、数据结构和对象 1.关于字符串 redis底层存储字符串结构为...

  • 《Redis实战》--读书笔记--第1章

    《Redis实战》--读书笔记 时间:2017年10月02日01:13:48 第1章 共有五种结构 ①String...

  • Redis读书笔记

    1.缓存相关概念 1.1 缓存穿透 缓存穿透是指缓存和数据库中都没有的数据,而用户不断发起请求,如发起为id为“-...

  • Redis读书笔记

    Redis分布式锁 1.分布式应用进行逻辑处理时经常会遇到并发问题。为了保持系统操作原子性,需要进行分布式锁的使用...

网友评论

      本文标题:Redis读书笔记

      本文链接:https://www.haomeiwen.com/subject/bunpghtx.html