内容简介:本次升级内容 新增queue模块(分布式队列) 重构底层DtClient模块,该模块线程不安全,如果多线程操作,需要自己同步锁,或者新建不同实例 新增全局单例Dt类,初始化一次后,后面使用各组件不用在设置DtClient的工...
本次升级内容
新增queue模块(分布式队列)
重构底层DtClient模块,该模块线程不安全,如果多线程操作,需要自己同步锁,或者新建不同实例
新增全局单例Dt类,初始化一次后,后面使用各组件不用在设置DtClient的工厂类
WIKI访问地址:https://gitee.com/xuan698400/distributed-tool/wikis/5%E3%80%81%E5%88%86%E5%B8%83%E5%BC%8F%E9%98%9F%E5%88%97?sort_id=697364
项目介绍
一个分布式常用 工具 组件。例如:分布式缓存、分布式序列号生成器、分布式锁、分布式订阅发布等等。
目前微服务开发的系统很多,这个就涉及到分布式集群问题。像以前如果是单机,那么一些解决方案都可以使用JVM的API来实现
例如:锁、缓存、订阅发布等操作。但是如果你是分布式系统,那么这些API就没用了,需要分布式的方式来重新实现这些操作工具或者策略。
软件架构
目前项目分两个module,distributed-tool和distributed-tool-test。前者是核心源码。后者是测试代码。
distributed-tool主要分如下组件:
com.xuanner.dt.client 所有的核心组件依赖模块,主要提供了最简单的分布式set、get、del、incre等操作。(V1.0支持)
com.xuanner.dt.cache 简单的分布式缓存模块。(V1.0支持)
com.xuanner.dt.sequence 分布式序列号生成组件。(V1.0支持)
com.xuanner.dt.pubsub 分布式订阅发布组件。(V1.1支持)
com.xuanner.dt.queue 分布式队列。(V1.2支持)
版本更新
V1.0版本
新增client模块(所有工具组件的核心)
新增cache模块(分布式缓存工具)
新增sequence模块(分布式序列号生成工具)
V1.1版本
新增pubsub模块(订阅发布模块)
V1.2版本
新增pubsub模块(分布式队列)
重构底层DtClient模块,该模块线程不安全,如果多线程操作,需要自己同步锁,或者新建不同实例
新增全局单例Dt类,初始化一次后,后面使用各组件不用在设置DtClient的工厂类
Maven引用
<dependency> <groupId>com.xuanner</groupId> <artifactId>distributed-tool</artifactId> <version>1.2</version> </dependency>
使用教程
初始化一个Config(一般全局一个实例就行)
RedisDtClientConfig config = new RedisDtClientConfig(); config.setHost("xxx"); config.setPort(8380); config.setAuth("xxx");
初始化Client的工厂类(一般全局一个实例就行,后面所有组件都需要这个实例)
RedisDtClientFactory clientFactory = new RedisDtClientFactory(); clientFactory.setConfig(config); clientFactory.init(); Dt.getInstance().setDefaultDtClientFactory(redisDtClientFactory);
使用完毕后,请销毁这个工厂
Dt.getInstance().getDefaultDtClientFactory().destroy();
一个简单的缓存使用例子
CacheClient cacheClient = new DefaultCacheClient(); cacheClient.set("key", "value", 5);
更多使用教程: https://gitee.com/xuan698400/distributed-tool/wikis/
后续支持功能
分布式信号量
分布式锁
联系方式
姓名:徐安
QQ:349309307
个人博客:xuanner.com
【声明】文章转载自:开源中国社区 [http://www.oschina.net]
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:- 分布式常用工具组件 distributed-tool V1.1 发布
- 分布式常用工具组件 distributed-tool V1.1 发布
- 分布式常用工具组件 distributed-tool V1.3 发布
- 分布式常用工具组件 distributed-tool V1.3 发布
- 分布式常用工具组件 distributed-tool V1.4 发布
- distributed-tool,一个分布式常用工具组件 V1.0 发布
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Eloquent JavaScript
Marijn Haverbeke / No Starch Press / 2011-2-3 / USD 29.95
Eloquent JavaScript is a guide to JavaScript that focuses on good programming techniques rather than offering a mish-mash of cut-and-paste effects. The author teaches you how to leverage JavaScript's......一起来看看 《Eloquent JavaScript》 这本书的介绍吧!