千恋*万花

  • 首页
  • 个人简历
  • 文章分类
    • 后端开发
    • 运维
    • 基础知识
    • 笔记
    • 工作运维记录
    • 随笔
    • 未分类文章
lock
golang

基于 go-redis 与 Lua 实现简易且高效的分布式锁

分布式锁的应用场景 在分布式业务中,若涉及到共享的资源,未防止多个进程同时访问、处理该资源,那么则需要一个分布式锁 来保证该共享资源在同一时刻只能被一个对象进行处理。 设计理论 为了实现锁互斥能力,则一定涉及到 Redis 的SETNX指令(SET if Not eXist) 锁只能由创建锁的对象解开,所以需要记录锁是由哪个对象创建的,解锁时需要验证锁的所有权 为了防止死锁,第一 需要允许强制解除锁,第二 每个锁必须要有 超时时间 综上,便可以编写出一个锁的定义了 type lock struct { contex…

2023-01-03 0条评论 4052点热度 2人点赞 初音萌奈 阅读全文

初音萌奈

我是练习时长 三年半 的后端开发程序员
谢谢你参观我的博客!
本网站现已支持IPv6
☞ 个人简历 ☜

分类
  • 后端开发 / 24篇
    • Elasticsearch (ES篇 / 2篇
    • gin / 6篇
    • golang / 12篇
    • lua / 1篇
    • MySQL / 8篇
    • PHP / 1篇
    • PostgreSQL (pgSQL篇 / 1篇
    • Redis / 1篇
  • 基础知识 / 6篇
    • 算法与数据结构 / 5篇
    • 计算机原理 / 1篇
  • 工作成长 / 1篇
  • 工作运维记录 / 7篇
  • 笔记 / 9篇
  • 运维 / 10篇
    • bash / 3篇
    • Docker / 1篇
    • Kubernetes (k8s篇 / 1篇
    • Linux / 4篇
    • NAS / 1篇
    • Server / 2篇
    • 开发环境 / 1篇
    • 网络 / 4篇
  • 随笔 / 8篇
    • 微博(字面意思) / 4篇
    • 日志 / 2篇
站点统计
  • 109
  • 5,342
  • 309,206
  • 138,528
  • 0
  • 55
  • 7

COPYRIGHT © 2025 HatsuneMona ALL RIGHTS RESERVED.

Theme Kratos Made By Seaton Jiang

晋ICP备17007130号-4