queue-slayer

An in-jvm processing pattern for parallelized work off of a queue.

License

License

GroupId

GroupId

com.blacklocus
ArtifactId

ArtifactId

qs-core
Last Version

Last Version

0.1
Release Date

Release Date

Type

Type

jar
Description

Description

queue-slayer
An in-jvm processing pattern for parallelized work off of a queue.
Project URL

Project URL

https://github.com/blacklocus/queue-slayer
Project Organization

Project Organization

BlackLocus
Source Code Management

Source Code Management

https://github.com/blacklocus/queue-slayer.git

Download qs-core

How to add to project

<!-- https://jarcasting.com/artifacts/com.blacklocus/qs-core/ -->
<dependency>
    <groupId>com.blacklocus</groupId>
    <artifactId>qs-core</artifactId>
    <version>0.1</version>
</dependency>
// https://jarcasting.com/artifacts/com.blacklocus/qs-core/
implementation 'com.blacklocus:qs-core:0.1'
// https://jarcasting.com/artifacts/com.blacklocus/qs-core/
implementation ("com.blacklocus:qs-core:0.1")
'com.blacklocus:qs-core:jar:0.1'
<dependency org="com.blacklocus" name="qs-core" rev="0.1">
  <artifact name="qs-core" type="jar" />
</dependency>
@Grapes(
@Grab(group='com.blacklocus', module='qs-core', version='0.1')
)
libraryDependencies += "com.blacklocus" % "qs-core" % "0.1"
[com.blacklocus/qs-core "0.1"]

Dependencies

compile (3)

Group / Artifact Type Version
org.slf4j : slf4j-api jar 1.7.5
com.google.guava : guava jar 15.0
org.apache.commons : commons-lang3 jar 3.1

Project Modules

There are no modules declared in this project.

(experimental...)

queue-slayer

A micro pattern for thread-parallelized processing of messages off of a queue.

Build Status

Usage

repositories {
    mavenCentral()
}

dependencies {

    compile 'com.blacklocus.queue-slayer:qs-core:0.5.1'

    // for AWS SQS message providers
    compile 'com.blacklocus.queue-slayer:qs-aws:0.5.1'
}

other dependency syntax on mvnrepository.com

A quick look:

// Reads in work items
MessageProvider provider = ...;

// Processes work items
MessageHandler handler = ...;

// Provides worker threads which process work items through the MessageHandler logic.
ExecutorService executor = ...;

// The orchestration of these components together.
MessageQueueReader reader = new MessageQueueReader(provider, handler, executor);

// The current thread will read in the items through the MessageProvider
// and pass them to the threads running the work items through the MessageHandler
// logic. The worker threads themselves are provided by the ExecutorService.
reader.run();

License

Copyright 2013-2015 BlackLocus under the Apache 2.0 license

com.blacklocus

BlackLocus

Versions

Version
0.1