首页
找靠谱产品
找解决方案
找靠谱公司
找案例
找对的人
专家智库
悬赏任务
SAAS
ToB门户
了解全球最新的ToB事件
论坛
潜水/灌水快乐,沉淀知识,认识更多同行。
ToB圈子
加入IT圈,遇到更多同好之人。
微博
Follow
记录
Doing
博客
Blog
文库
业界最专业的IT文库,上传资料也可以赚钱
下载
分享
Share
排行榜
Ranklist
相册
Album
应用中心
qidao123.com ToB IT社区-企服评测·应用市场
»
论坛
›
软件与程序人生
›
后端开发
›
.Net
›
开源:Taurus.DistributedLock 分布式锁框架,支持 .Net ...
返回列表
发新帖
开源:Taurus.DistributedLock 分布式锁框架,支持 .Net 和 .Net Core 双系
[复制链接]
发表于 2024-5-6 18:18:39
|
显示全部楼层
|
阅读模式
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要
登录
才可以下载或查看,没有账号?
立即注册
×
前言:
在经过漫长的技术沉淀,终于又为 .Net 及 .Net Core 的
微服务
系列框架贡献当中的一个重要组件。
Taurus.DistributedLock is a distributed lock for .net or .net core.【支持:Redis、MemCache、Database、Local、File 五类锁】
1、开源地址:
https://github.com/cyq1162/Taurus.DistributedLock
# Taurus.DistributedLock 分布式锁,使用 .Net Core 示例:
2、以 Nuget 中引入运行包:Taurus.DistributedLock
3、进行编码:
1、引入名称空间:
using Taurus.Plugin.DistributedLock;
复制
代码
2、
配置
相关项(示例用
代码
进行
配置
,也可以在
配置
文件中配置):
1、Database 锁配置:
DLockConfig.Conn = "server=.;database=mslog;uid=sa;pwd=123456";//由
数据库
链接决定启用什么链接
DLockConfig.TableName = "taurus_lock";
2、Redis 锁配置:
DLockConfig.RedisServers = "127.0.0.1:6379";
3、MemCache 锁配置:
DLockConfig.MemCacheServers = "192.168.100.111:11211";
复制
代码
3、根据需要获得对应锁类型:
var dsLock = DLock.File;// Get File Lock
var dsLock = DLock.Local;// Get Local Lock
var dsLock = DLock.Database;// Get DataBase Lock
var dsLock = DLock.Redis;// Get Redis Lock
var dsLock = DLock.MemCache;// Get MemCache Lock
复制代码
4、进行锁、并释放锁:
string key = "myLock";
bool isOK = false;
try
{
isOK = dsLock.Lock(key, 30000);
if (isOK)
{
Console.Write(" - OK - " + );
}
}
finally
{
if (isOK)
{
dsLock.UnLock(key);
}
}
复制代码
更详细使用见开源地址:/demo 运行示例,运行界面:
总结:
分布式锁,最早在是去年,因为前面两个开源框架:Taurus.DTC 分布式事务框架、Taurus.DTS 分布式任务框架 中需要用到分布式锁。
考虑到 CYQ.Data ORM框架内部已经实现了分布式缓存(Redis、Memcached),而分布式锁依赖于分布式缓存, 所以花了些时间,集成在
CYQ.Data
框架内部实现了,默认实现时并没有
数据库
类型。
后来想让Taurus.DistributedLock 分布式锁框架独立,也让 CYQ.Data 单纯一些,分布式锁从 CYQ.Data
版本
移除了 。
同时独立的分布式锁框架,增加了
数据库
类型的锁,数据库类型锁目前支持(Mssql、Mysql、Oracle、Sybase、Postgres、DB2、FireBird、Sqlite、DaMeng(达梦)、KingBaseES(人大金仓))。
回复
使用道具
举报
返回列表
浏览过的版块
DevOps与敏捷开发
Oracle
数据仓库与分析
自由的羽毛
+ 我要发帖
登录后关闭弹窗
登录参与点评抽奖 加入IT实名职场社区
去登录
微信订阅号
微信服务号
微信客服(加群)
H5
小程序
快速回复
返回顶部
返回列表