Show Table of Contents
Chapter 116. NATS
NATS Component
NATS is a fast and reliable messaging platform.
Maven users will need to add the following dependency to their
pom.xml for this component.
<dependency>
<groupId>org.apache.camel</groupId>
<artifactId>camel-nats</artifactId>
<!-- use the same version as your Camel core version -->
<version>x.y.z</version>
</dependency>URI format
nats:servers[?options]
Where servers represents the list of NATS servers.
Options
|
Name
|
Default Value
|
Description
|
|---|---|---|
servers
|
null
|
Defines the servers the component should connect to.
|
topic
|
null
|
The topic to subscribe/publish to. |
reconnect
|
true
|
Whether or not to use the reconnection feature. |
pedantic
|
false
|
Whether or not running in pedantic mode (this affects performance). |
verbose
|
false
|
Whether or not running in verbose mode |
ssl
|
false
|
Whether or not to use SSL |
reconnectTimeWait
|
2000
|
Waiting time before attempts reconnection (in milliseconds) |
maxReconnectAttempts
|
3
|
Set the maximum number of reconnection attempts in case the connection is lost. |
pingInterval
|
4000
|
Ping interval to be aware if connection is still alive (in milliseconds) |
noRandomizeServers
|
false
|
Whether or not to randomize the order of servers for the connection attempts |
queueName
|
null
|
The Queue name if we are using NATS for a queue configuration (consumer). |
maxMessages
|
null
|
Stop receiving messages from a topic we are subscribing to after maxMessages (consumer). |
poolSize
|
10
|
Pool size for consumer workers (consumer). |
Headers
| Name | Type | Description |
|---|---|---|
CamelNatsMessageTimestamp
|
long
|
The timestamp of a consumed message. |
CamelNatsSubscriptionId
|
Integer
|
The subscription ID of a consumer.
|
Producer example:
from("direct:send").to("nats://localhost:4222?topic=test");
Consumer example:
from("nats://localhost:4222?topic=test&maxMessages=5&queueName=test").to("mock:result");
Where did the comment section go?
Red Hat's documentation publication system recently went through an upgrade to enable speedier, more mobile-friendly content. We decided to re-evaluate our commenting platform to ensure that it meets your expectations and serves as an optimal feedback mechanism. During this redesign, we invite your input on providing feedback on Red Hat documentation via the discussion platform.