Skip to content

DDTH/ddth-queue

Repository files navigation

Build Status Javadocs

ddth-queue

DDTH's libary to interact with various queue implementations.

Project home: https://github.com/DDTH/ddth-queue

ddth-queue requires Java 11+ since v1.0.0. For Java 8, use v0.7.x

Introduction

I work with queues from project to project. However, different projects use different queue implementations (based on their needs and context). I need a unified and simple API set to interact with various queue backend systems, also extra functionality such as commit queue messages when done or re-queue messages if needed, or find orphan ones (messages that have not been committed for a long period). Hence this library is born to fulfill my need.

Since v0.7.0 ddth-queue added pub/sub functionality.

Installation

Latest release version: 1.0.0. See RELEASE-NOTES.md.

Maven dependency: if only a sub-set of ddth-queue functionality is used, choose the corresponding dependency artifact(s) to reduce the number of unused jar files.

ddth-queue-core: ddth-queue interfaces and in-memory (using java.util.Queue) implementation:

<dependency>
	<groupId>com.github.ddth</groupId>
	<artifactId>ddth-queue-core</artifactId>
	<version>1.0.0</version>
</dependency>

ddth-queue-activemq: include ddth-queue-core and Apache ActiveMQ dependencies:

<dependency>
    <groupId>com.github.ddth</groupId>
    <artifactId>ddth-queue-activemq</artifactId>
    <version>1.0.0</version>
    <type>pom</type>
</dependency>

ddth-queue-disruptor: include ddth-queue-core and LMAX Disruptor dependencies:

<dependency>
    <groupId>com.github.ddth</groupId>
    <artifactId>ddth-queue-disruptor</artifactId>
    <version>1.0.0</version>
    <type>pom</type>
</dependency>

ddth-queue-jdbc: include ddth-queue-core and ddth-dao-jdbc dependencies:

<dependency>
    <groupId>com.github.ddth</groupId>
    <artifactId>ddth-queue-jdbc</artifactId>
    <version>1.0.0</version>
    <type>pom</type>
</dependency>

ddth-queue-kafka: include ddth-queue-core and ddth-kafka dependencies:

<dependency>
    <groupId>com.github.ddth</groupId>
    <artifactId>ddth-queue-kafka</artifactId>
    <version>1.0.0</version>
    <type>pom</type>
</dependency>

ddth-queue-rabbitmq: include ddth-queue-core and RabbitMQ dependencies:

<dependency>
    <groupId>com.github.ddth</groupId>
    <artifactId>ddth-queue-rabbitmq</artifactId>
    <version>1.0.0</version>
    <type>pom</type>
</dependency>

ddth-queue-redis: include ddth-queue-core and Jedis dependencies:

<dependency>
    <groupId>com.github.ddth</groupId>
    <artifactId>ddth-queue-redis</artifactId>
    <version>1.0.0</version>
    <type>pom</type>
</dependency>

ddth-queue-rocksdb: include ddth-queue-core and RocksDB dependencies:

<dependency>
    <groupId>com.github.ddth</groupId>
    <artifactId>ddth-queue-rocskdb</artifactId>
    <version>1.0.0</version>
    <type>pom</type>
</dependency>

Usage

See PUBSUB.md for message publish/subscribe functionality.

See QUEUE.md for message queue functionality.

License

See LICENSE.txt for details. Copyright (c) 2015-2019 Thanh Ba Nguyen.

Third party libraries are distributed under their own licenses.

About

Library to interact with various queue implementations

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 2

  •  
  •