分布式常用工具组件 distributed-tool V1.2 发布

栏目: 软件资讯 · 发布时间: 6年前

内容简介:本次升级内容 新增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主要分如下组件:

  1. com.xuanner.dt.client 所有的核心组件依赖模块,主要提供了最简单的分布式set、get、del、incre等操作。(V1.0支持)

  2. com.xuanner.dt.cache 简单的分布式缓存模块。(V1.0支持)

  3. com.xuanner.dt.sequence 分布式序列号生成组件。(V1.0支持)

  4. com.xuanner.dt.pubsub 分布式订阅发布组件。(V1.1支持)

  5. 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/

后续支持功能

  1. 分布式信号量

  2. 分布式锁

联系方式

  1. 姓名:徐安

  2. 邮箱:javaandswing@163.com

  3. QQ:349309307

  4. 个人博客:xuanner.com


【声明】文章转载自:开源中国社区 [http://www.oschina.net]


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Eloquent JavaScript

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》 这本书的介绍吧!

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试

HEX HSV 转换工具
HEX HSV 转换工具

HEX HSV 互换工具

HSV CMYK 转换工具
HSV CMYK 转换工具

HSV CMYK互换工具