The Kestrel component allows messages to be sent to a Kestrel queue, or messages to be consumed from a Kestrel queue. This component uses the spymemcached client for memcached protocol communication with Kestrel servers.
The kestrel project is inactive and the Camel team regard this components as deprecated.
Where queuename is the name of the queue on Kestrel. The addresslist part of the URI may include one or more
If the addresslist is omitted,
Likewise, if a port is omitted from a
Here is an example of a Kestrel endpoint URI used for producing to a clustered queue:
Here is an example of a Kestrel endpoint URI used for consuming concurrently from a queue:
You can configure properties on each Kestrel endpoint individually by specifying them in the
NOTE: If waitTimeMs is set to zero (or negative), the
Configuring the Kestrel component using Spring XML
The simplest form of explicit configuration is as follows:
That will enable the Kestrel component with all default settings, i.e. it will use
To use specific options in the base configuration (which supplies configuration to endpoints whose
Example 1: Consuming
Example 2: Producing
Example 3: Spring XML Configuration
The Kestrel component has the following dependencies:
You must have the
Alternatively, you can download the jar directly.
NOTE: The spymemcached client library does not work properly with kestrel when JVM assertions are enabled. There is a known issue with spymemcached when assertions are enabled and a requested key contains the
Fortunately, JVM assertions are disabled by default, unless you explicitly enable them, so this should not present a problem under normal circumstances.
Something to note is that Maven's Surefire test plugin enables assertions. If you're using this component in a Maven test environment, you may need to set