内容简介:这次更新改动还是有点大的,稍微重构了底层实现架构,不过对上次API改动不多。主要还优化了用户使用体验。主要更新说明如下:这是一个分布式常用工具组件。其中包括但不限于:分布式List、分布式Set、分布式Long、分布式信号量、分布式缓存、分布式锁、分布式序列号生成器、分布式订阅发布模式等常用工具类
本次更新
这次更新改动还是有点大的,稍微重构了底层实现架构,不过对上次API改动不多。主要还优化了用户使用体验。主要更新说明如下:
-
重构底层实现,使用户使用更加的方便
-
新增分布式锁(使用 Lua 实现)
-
新增分布式信号量(使用Lua实现)
项目介绍
这是一个分布式常用 工具 组件。其中包括但不限于:
分布式List、分布式Set、分布式Long、分布式信号量、分布式缓存、分布式锁、分布式序列号生成器、分布式订阅发布模式等常用工具类
目前微服务开发的系统很多,这个就涉及到分布式集群问题。像以前如果是单机,那么这些解决方案都可以使用JVM的API来实现
但在分布式环境下,这些API都不可用,所以急需一套分布式的API来支持这种常用操作,那么我来提供了,后面持续添加各种分布式常用工具类
注意:所有组件目前都是线程不安全,如果多线程请使用多实例,或者自己加同步锁
软件架构
目前项目分两个module,distributed-tool和distributed-tool-test。前者是核心源码。后者是测试代码。
distributed-tool主要分如下模块:分布式List、分布式Set、分布式Long、分布式信号量等
-
core 提供基本分布式组件。(V1.3支持)
-
cache 简单的分布式缓存模块。(V1.3支持)
-
lock 分布式锁。(V1.3支持)
-
pubsub 分布式订阅发布组件。(V1.3支持)
-
sequence 分布式序列号生成器。(V1.3支持)
版本更新
V1.0版本
-
新增client模块(所有工具组件的核心)
-
新增cache模块(分布式缓存工具)
-
新增sequence模块(分布式序列号生成工具)
V1.1版本
-
新增pubsub模块(订阅发布模块)
V1.2版本
-
新增queue模块(分布式队列)
-
重构底层DtClient模块,该模块线程不安全,如果多线程操作,需要自己同步锁,或者新建不同实例
-
新增全局单例Dt类,初始化一次后,后面使用各组件不用在设置DtClient的工厂类
V1.3版本
-
重构底层实现,时用户使用更加的方便
-
新增分布式锁
-
新增分布式信号量
Maven引用
<dependency> <groupId>com.xuanner</groupId> <artifactId>distributed-tool</artifactId> <version>1.3</version> </dependency>
使用教程
初始化(目前底层使用了 Redis 来实现,所以使用Redis方式初始化)
Dt.getInstance().initJedis("xxx", 8380, "xxx");
销毁(注意,在应用的结束生命周期上加上销毁代码,例如Spring的destroy周期)
Dt.getInstance().getDefaultJedisFactory().destroy();
一个分布式List使用例子
DtList list = Dt.newDtList("listName"); list.pushLeft(new String[] { "a", "b" }); list.popLeft(); list.close();//使用完毕记得close
一个分布式缓存锁使用例子
DtLock lock = Dt.newDtLock("lockName"); String kId = lock.tryLock(); //你的临界资源操作逻辑 lock.unLock(kId); lock.close();//使用完毕记得close
更多使用教程: https://gitee.com/xuan698400/distributed-tool/wikis/
后续支持功能
-
分布式限流工具
联系方式
-
姓名:徐安
-
QQ:349309307
-
个人博客:xuanner.com
-
交流群:813221731(群名称:xsequence交流,群备注:分布式开发交流)
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:- 分布式常用工具组件 distributed-tool V1.1 发布
- 分布式常用工具组件 distributed-tool V1.2 发布
- 分布式常用工具组件 distributed-tool V1.1 发布
- 分布式常用工具组件 distributed-tool V1.3 发布
- 分布式常用工具组件 distributed-tool V1.4 发布
- distributed-tool,一个分布式常用工具组件 V1.0 发布
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
CLR via C#
Jeffrey Richter / 周靖 / 清华大学出版社 / 2015-1-1 / CNY 109.00
《CLR via C#(第4版)》针对CLR和.NET Framework 4.5进行深入、全面的探讨,并结合实例介绍了如何利用它们进行设计、开发和调试。全书5部分共29章。第Ⅰ部分介绍CLR基础,第Ⅱ部分解释如何设计类型,第Ⅲ部分介绍基本类型,第Ⅳ部分以核心机制为主题,第Ⅴ部分重点介绍线程处理。 通过本书的阅读,读者可以掌握CLR和.NET Framework的精髓,轻松、高效地创建高性能......一起来看看 《CLR via C#》 这本书的介绍吧!