自己动手基于 Redis 实现一个 .NET 的分布式锁类库
查看原文
? 自己动手基于 Redis 实现一个 .NET 的分布式锁类库
内容简介:
分布式锁的核心其实就是采用一个集中式的服务,然后多个应用节点进行抢占式锁定来进行实现,今天介绍如何采用Redis作为基础服务,实现一个分布式锁的类库,本方案不考虑 Redis 集群多节点问题,如果引入集群多节点问题,会导致解决成本大幅上升,因为 Redis 单节点就可以很容易的处理10万并发量了,这对于日常开发中 99% 的项目足够使用了。
目标如下:
支持 using 语法,出 using 范围之后自动释放锁
支持 尝试行为,如果锁获取不到则直接跳过不等待
支持 等待行为,如果锁获取不到则持续等待直至超过设置的等待时间
支持信号量控制,实现一个锁可以同时获取到几次,方便对一些方法进行并发控制
代码整体结构图
创建 DistributedLock 类库,然后定义接口文件 IDis...
?更多精彩头条内容,请收藏程序员导航网,为您提供一站式码农必备网址大全,持续为您输出优质站点和IT信息!
暂无评论...