nsq-java-client

Fast Java client for NSQ

License

License

MIT
Categories

Categories

Java Languages CLI User Interface
GroupId

GroupId

com.snowplowanalytics
ArtifactId

ArtifactId

nsq-java-client
Last Version

Last Version

1.3.0
Release Date

Release Date

Type

Type

jar
Description

Description

nsq-java-client
Fast Java client for NSQ
Project URL

Project URL

http://snowplowanalytics.com
Project Organization

Project Organization

com.snowplowanalytics
Source Code Management

Source Code Management

https://github.com/snowplow/JavaNSQClient

Download nsq-java-client

How to add to project

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

Dependencies

compile (6)

Group / Artifact Type Version
org.apache.logging.log4j : log4j-api jar 2.13.3
org.apache.logging.log4j : log4j-core jar 2.13.3
io.netty : netty-all jar 4.1.51.Final
com.google.guava : guava jar 28.1-jre
com.fasterxml.jackson.core : jackson-databind jar 2.10.5
org.apache.commons : commons-pool2 jar 2.8.0

test (4)

Group / Artifact Type Version
io.netty : netty-tcnative jar 2.0.31.Final
io.netty : netty-tcnative jar 2.0.31.Final
io.netty : netty-tcnative jar 2.0.31.Final
com.novocode : junit-interface jar 0.11

Project Modules

There are no modules declared in this project.

JavaNSQClient

A netty-based Java8 client for NSQ heavily forked of brainlag/JavaNSQClient.

Artifact

Maven

<dependency>
  <groupId>com.snowplowanalytics</groupId>
  <artifactId>nsq-java-client</artifactId>
  <version>1.2.0</version>
</dependency>

SBT

"com.snowplowanalytics" % "nsq-java-client" % "1.2.0"

Consumer

Example usage:

NSQLookup lookup = new DefaultNSQLookup();
lookup.addLookupAddress("localhost", 4161);
NSQConsumer consumer = new NSQConsumer(lookup, "speedtest", "dustin", (message) -> {
        System.out.println("received: " + message);
        //now mark the message as finished.
        message.finished();

        //or you could requeue it, which indicates a failure and puts it back on the queue.
        //message.requeue();
});

consumer.start();

Producer

Example usage:

NSQProducer producer = new NSQProducer().addAddress("localhost", 4150).start();
producer.produce("TestTopic", ("this is a message").getBytes());

Backoff

By default Backoff does not kick in and a consumer will eat all your memory and CPU. To enable Backoff you have to set your own thread pool executer with:

consumer.setExecutor(...);
com.snowplowanalytics

Snowplow Analytics

Versions

Version
1.3.0
1.3.0-M1
1.2.0
1.2.0-M2