This closes #1494
This commit is contained in:
commit
b19637a347
|
@ -5,8 +5,8 @@
|
|||
"githubHost": "https://github.com/",
|
||||
"gitbook": "3.x.x",
|
||||
"links": {
|
||||
"home": "http://activemq.apache.org/",
|
||||
"issues": "http://activemq.apache.org/",
|
||||
"home": "http://activemq.apache.org/artemis",
|
||||
"issues": "https://issues.apache.org/jira/browse/ARTEMIS",
|
||||
"contribute": "http://activemq.apache.org/contributing.html"
|
||||
}
|
||||
}
|
||||
|
|
|
@ -5,8 +5,8 @@
|
|||
"githubHost": "https://github.com/",
|
||||
"gitbook": "3.x.x",
|
||||
"links": {
|
||||
"home": "http://activemq.apache.org/",
|
||||
"issues": "http://activemq.apache.org/",
|
||||
"home": "http://activemq.apache.org/artemis",
|
||||
"issues": "https://issues.apache.org/jira/browse/ARTEMIS",
|
||||
"contribute": "http://activemq.apache.org/contributing.html"
|
||||
}
|
||||
}
|
||||
|
|
|
@ -130,7 +130,7 @@ Add an address configuration with Anycast routing type element and its associate
|
|||
|
||||
It is possible to define an address with both point-to-point and publish-subscribe semantics enabled. While not typically recommend, this can be useful when you want, for example, a JMS Queue say orders and a JMS Topic named orders. The different routing types make the addresses appear to be distinct.
|
||||
|
||||
Using an example of JMS Clients, the messages sent by a JMS queue producer will be routed using the anycast routing type. Messages sent by a JMS topic producer will use the multicast routing type. In addition when a JMS topic consumer attaches, it will be attached to it’s own subscription queue. JMS queue consumer will be attached to the anycast queue.
|
||||
Using an example of JMS Clients, the messages sent by a JMS message producer will be routed using the anycast routing type. Messages sent by a JMS topic producer will use the multicast routing type. In addition when a JMS topic consumer attaches, it will be attached to it’s own subscription queue. JMS queue consumer will be attached to the anycast queue.
|
||||
|
||||
![Point to Point](images/addressing-model-p2p-pubsub.png)
|
||||
Figure 4. [Point-to-Point and Publish-Subscribe
|
||||
|
@ -156,7 +156,7 @@ The XML snippet below is an example of what the configuration for an address usi
|
|||
|
||||
## How to filter messages
|
||||
|
||||
Apache ActiveMQ Artemis supports the ability to filter messages using Apache Artemis [Filter Expressions](#filter-expressions).
|
||||
Apache ActiveMQ Artemis supports the ability to filter messages using Apache Artemis [Filter Expressions](filter-expressions.md).
|
||||
|
||||
Filters can be applied in two places, on a queue and on a consumer.
|
||||
|
||||
|
@ -275,7 +275,7 @@ The example below configures an address-setting to be automatically deleted by t
|
|||
...
|
||||
<address-settings>
|
||||
<address-setting match="/news/politics/#">
|
||||
<auto-create-addresses>true</auto-create-addresses>
|
||||
<auto-delete-addresses>true</auto-delete-addresses>
|
||||
<default-address-routing-type>MULTICAST</default-address-routing-type>
|
||||
</address-setting>
|
||||
</address-settings>
|
||||
|
@ -362,7 +362,7 @@ In <broker-instance>/etc/broker.xml, add the anycastPrefix to the URL of the des
|
|||
|
||||
In most cases it’s not necessary to pre-create subscription queues. The relevant protocol managers take care of creating subscription queues when clients request to subscribe to an address. The type of subscription queue created, depends on what properties the client request. E.g. durable, non-shared, shared etc... Protocol managers uses special queue names to identify which queues below to which consumers and users need not worry about the details.
|
||||
|
||||
However, there are scenarios where a user may want to use broker side configuration to pre-configure a subscription. And later connect to that queue directly using a [Fully Qualified Queue name](#fully-qualified-queue-names).. The examples below show how to use broker side configuration to pre-configure a queue with publish subscribe behavior for shared, non-shared, durable and non-durable subscription behavior.
|
||||
However, there are scenarios where a user may want to use broker side configuration to pre-configure a subscription. And later connect to that queue directly using a [Fully Qualified Queue name](#fully-qualified-queue-names). The examples below show how to use broker side configuration to pre-configure a queue with publish subscribe behavior for shared, non-shared, durable and non-durable subscription behavior.
|
||||
|
||||
#### Configuring a shared durable subscription queue with up to 10 concurrent consumers
|
||||
|
||||
|
@ -472,11 +472,10 @@ The idea with address settings, is you can provide a block of settings
|
|||
which will be applied against any addresses that match the string in the
|
||||
`match` attribute. In the above example the settings would only be
|
||||
applied to the address "order.foo" address but you can also use wildcards
|
||||
to apply settings. See: [The chapter on the wild card syntax](#wildcard-syntax).
|
||||
to apply settings. See: [The chapter on the wild card syntax](wildcard-syntax.md).
|
||||
|
||||
For example, if you used the `match` string `jms.queue.#` the settings
|
||||
would be applied to all addresses which start with `jms.queue.` which
|
||||
would be all JMS queues.
|
||||
For example, if you used the `match` string `queue.#` the settings
|
||||
would be applied to all addresses which start with `queue.`
|
||||
|
||||
The meaning of the specific settings are explained fully throughout the
|
||||
user manual, however here is a brief description with a link to the
|
||||
|
@ -484,13 +483,13 @@ appropriate chapter if available.
|
|||
|
||||
`max-delivery-attempts` defines how many time a cancelled message can be
|
||||
redelivered before sending to the `dead-letter-address`. A full
|
||||
explanation can be found [here](#undelivered-messages.configuring).
|
||||
explanation can be found [here](undelivered-messages.md#Configuring-Dead-Letter-Addresses).
|
||||
|
||||
`redelivery-delay` defines how long to wait before attempting redelivery
|
||||
of a cancelled message. see [here](#undelivered-messages.delay).
|
||||
of a cancelled message. see [here](undelivered-messages.md#Configuring-Delayed-Redelivery).
|
||||
|
||||
`expiry-address` defines where to send a message that has expired. see
|
||||
[here](#message-expiry.configuring).
|
||||
[here](message-expiry.md#Configuring-Expiry-Addresses).
|
||||
|
||||
`expiry-delay` defines the expiration time that will be used for
|
||||
messages which are using the default expiration time (i.e. 0). For
|
||||
|
@ -502,14 +501,14 @@ unchanged. Setting `expiry-delay` to "-1" will disable this feature. The
|
|||
default is "-1".
|
||||
|
||||
`last-value-queue` defines whether a queue only uses last values or not.
|
||||
see [here](#last-value-queues).
|
||||
see [here](last-value-queues.md).
|
||||
|
||||
`max-size-bytes` and `page-size-bytes` are used to set paging on an
|
||||
address. This is explained [here](#paging).
|
||||
address. This is explained [here](paging.md#Configuration).
|
||||
|
||||
`redistribution-delay` defines how long to wait when the last consumer
|
||||
is closed on a queue before redistributing any messages. see
|
||||
[here](#clusters).
|
||||
[here](clusters.md#Message-Redistribution).
|
||||
|
||||
`send-to-dla-on-no-route`. If a message is sent to an address, but the
|
||||
server does not route it to any queues, for example, there might be no
|
||||
|
|
|
@ -66,16 +66,6 @@ messaging server and a number of protocol managers that provide support for
|
|||
the various protocol mentioned earlier. Protocol managers are plugable
|
||||
if you
|
||||
|
||||
The role of the JMS Service is to deploy any JMS Queue, Topic and
|
||||
ConnectionFactory instances from any server side JMS
|
||||
configuration. It also provides a simple management API for
|
||||
creating and destroying Queues and Topics
|
||||
which can be accessed via JMX or the connection. It is a separate
|
||||
service to the ActiveMQ Artemis core server, since the core server is JMS
|
||||
agnostic. If you don't want to deploy any JMS Queue or Topic via
|
||||
server side XML configuration and don't require a JMS management
|
||||
API on the server side then you can disable this service.
|
||||
|
||||
The stand-alone server configuration uses [Airline](https://github.com/airlift/airline)
|
||||
for bootstrapping the Broker.
|
||||
|
||||
|
|
|
@ -5,8 +5,8 @@
|
|||
"githubHost": "https://github.com/",
|
||||
"gitbook": "3.x.x",
|
||||
"links": {
|
||||
"home": "http://activemq.apache.org/",
|
||||
"issues": "http://activemq.apache.org/",
|
||||
"home": "http://activemq.apache.org/artemis",
|
||||
"issues": "https://issues.apache.org/jira/browse/ARTEMIS",
|
||||
"contribute": "http://activemq.apache.org/contributing.html"
|
||||
}
|
||||
}
|
||||
|
|
|
@ -29,7 +29,7 @@ Another important part of clustering is *server discovery* where servers
|
|||
can broadcast their connection details so clients or other servers can
|
||||
connect to them with the minimum of configuration.
|
||||
|
||||
> **Warning**
|
||||
> <a id="copy-warning"></a>**Warning**
|
||||
>
|
||||
> Once a cluster node has been configured it is common to simply copy
|
||||
> that configuration to other nodes to produce a symmetric cluster.
|
||||
|
@ -555,7 +555,7 @@ server.
|
|||
|
||||
<cluster-connections>
|
||||
<cluster-connection name="my-cluster">
|
||||
<address>jms</address>
|
||||
<address></address>
|
||||
<connector-ref>netty-connector</connector-ref>
|
||||
<check-period>1000</check-period>
|
||||
<connection-ttl>5000</connection-ttl>
|
||||
|
@ -589,9 +589,7 @@ specified. The following shows all the available configuration options
|
|||
connection address string with '!'.
|
||||
|
||||
In the case shown above the cluster connection will load balance
|
||||
messages sent to addresses that start with `jms`. This cluster
|
||||
connection, will, in effect apply to all JMS queues and topics since
|
||||
they map to core queues that start with the substring "jms".
|
||||
messages sent to all addresses (since it's empty).
|
||||
|
||||
The address can be any value and you can have many cluster
|
||||
connections with different values of `address`, simultaneously
|
||||
|
@ -608,16 +606,16 @@ specified. The following shows all the available configuration options
|
|||
|
||||
Examples:
|
||||
|
||||
- 'jms.eu'
|
||||
matches all addresses starting with 'jms.eu'
|
||||
- '!jms.eu'
|
||||
matches all address except for those starting with 'jms.eu'
|
||||
- 'jms.eu.uk,jms.eu.de'
|
||||
matches all addresses starting with either 'jms.eu.uk' or
|
||||
'jms.eu.de'
|
||||
- 'jms.eu,!jms.eu.uk'
|
||||
matches all addresses starting with 'jms.eu' but not those
|
||||
starting with 'jms.eu.uk'
|
||||
- 'eu'
|
||||
matches all addresses starting with 'eu'
|
||||
- '!eu'
|
||||
matches all address except for those starting with 'eu'
|
||||
- 'eu.uk,eu.de'
|
||||
matches all addresses starting with either 'eu.uk' or
|
||||
'eu.de'
|
||||
- 'eu,!eu.uk'
|
||||
matches all addresses starting with 'eu' but not those
|
||||
starting with 'eu.uk'
|
||||
|
||||
Notes:
|
||||
|
||||
|
@ -935,16 +933,14 @@ Here's an address settings snippet from `broker.xml`
|
|||
showing how message redistribution is enabled for a set of queues:
|
||||
|
||||
<address-settings>
|
||||
<address-setting match="jms.#">
|
||||
<address-setting match="#">
|
||||
<redistribution-delay>0</redistribution-delay>
|
||||
</address-setting>
|
||||
</address-settings>
|
||||
|
||||
The above `address-settings` block would set a `redistribution-delay` of
|
||||
`0` for any queue which is bound to an address that starts with "jms.".
|
||||
All JMS queues and topic subscriptions are bound to addresses that start
|
||||
with "jms.", so the above would enable instant (no delay) redistribution
|
||||
for all JMS queues and topic subscriptions.
|
||||
`0` for any queue which is bound to any address. So the above would enable
|
||||
instant (no delay) redistribution for all addresses.
|
||||
|
||||
The attribute `match` can be an exact match or it can be a string that
|
||||
conforms to the Apache ActiveMQ Artemis wildcard syntax (described in [Wildcard Syntax](wildcard-syntax.md)).
|
||||
|
|
|
@ -10,10 +10,9 @@ Server Configuration
|
|||
broker.xml
|
||||
--------------------------
|
||||
|
||||
This is the main core server configuration file which contains to elements
|
||||
'core' and 'jms'.
|
||||
The 'core' element contains the main server configuration while the 'jms'
|
||||
element is used by the server side JMS service to load JMS Queues, Topics
|
||||
This is the main core server configuration file which contains the 'core'
|
||||
element.
|
||||
The 'core' element contains the main server configuration.
|
||||
|
||||
# System properties
|
||||
|
||||
|
@ -83,7 +82,7 @@ Name | Description
|
|||
[journal-type](persistence.md) | the type of journal to use. Default=ASYNCIO
|
||||
[journal-datasync](persistence.md) | It will use msync/fsync on journal operations. Default=true.
|
||||
[large-messages-directory](large-messages.md "Configuring the server") | the directory to store large messages. Default=data/largemessages
|
||||
[management-address](management.md "Configuring Core Management") | the name of the management address to send management messages to. It is prefixed with "jms.queue" so that JMS clients can send messages to it. Default=jms.queue.activemq.management
|
||||
[management-address](management.md "Configuring Core Management") | the name of the management address to send management messages to. Default=activemq.management
|
||||
[management-notification-address](management.md "Configuring The Core Management Notification Address") | the name of the address that consumers bind to receive management notifications. Default=activemq.notifications
|
||||
[mask-password](configuration-index.md "Using Masked Passwords in Configuration Files") | This option controls whether passwords in server configuration need be masked. If set to "true" the passwords are masked. Default=false
|
||||
[max-saved-replicated-journals-size](ha.md#data-replication) | This specifies how many times a replicated backup server can restart after moving its files on start. Once there are this number of backup journal files the server will stop permanently after if fails back. -1 Means no Limit, 0 don't keep a copy at all, Default=2
|
||||
|
@ -256,18 +255,6 @@ Name | Description
|
|||
[permission.type ](security.md "Role based security for addresses") | the type of permission
|
||||
[permission.roles ](security.md "Role based security for addresses") | a comma-separated list of roles to apply the permission to
|
||||
|
||||
----------------------------
|
||||
|
||||
##The jms configuration
|
||||
|
||||
Name | Type | Description
|
||||
:--- | :--- | :---
|
||||
[queue](using-jms.md "JMS Server Configuration") | Queue | a queue
|
||||
[queue.name (attribute)](using-jms.md "JMS Server Configuration") | String | unique name of the queue
|
||||
[queue.durable](using-jms.md "JMS Server Configuration") | Boolean | is the queue durable?. Default=true
|
||||
[queue.filter](using-jms.md "JMS Server Configuration") | String | optional filter expression for the queue
|
||||
[topic](using-jms.md "JMS Server Configuration") | Topic | a topic
|
||||
[topic.name (attribute)](using-jms.md "JMS Server Configuration") | String | unique name of the topic
|
||||
|
||||
|
||||
Using Masked Passwords in Configuration Files
|
||||
|
|
|
@ -42,8 +42,8 @@ Bridges are configured in `broker.xml`. Let's kick off
|
|||
with an example (this is actually from the bridge example):
|
||||
|
||||
<bridge name="my-bridge">
|
||||
<queue-name>jms.queue.sausage-factory</queue-name>
|
||||
<forwarding-address>jms.queue.mincing-machine</forwarding-address>
|
||||
<queue-name>sausage-factory</queue-name>
|
||||
<forwarding-address>mincing-machine</forwarding-address>
|
||||
<filter string="name='aardvark'"/>
|
||||
<transformer-class-name>
|
||||
org.apache.activemq.artemis.jms.example.HatColourChangeTransformer
|
||||
|
|
|
@ -59,8 +59,8 @@ Here's some example xml configuration for an exclusive divert, it's
|
|||
taken from the divert example:
|
||||
|
||||
<divert name="prices-divert">
|
||||
<address>jms.topic.priceUpdates</address>
|
||||
<forwarding-address>jms.queue.priceForwarding</forwarding-address>
|
||||
<address>priceUpdates</address>
|
||||
<forwarding-address>priceForwarding</forwarding-address>
|
||||
<filter string="office='New York'"/>
|
||||
<transformer-class-name>
|
||||
org.apache.activemq.artemis.jms.example.AddForwardingTimeTransformer
|
||||
|
@ -68,11 +68,9 @@ taken from the divert example:
|
|||
<exclusive>true</exclusive>
|
||||
</divert>
|
||||
|
||||
We define a divert called '`prices-divert`' that will divert any
|
||||
messages sent to the address '`jms.topic.priceUpdates`' (this
|
||||
corresponds to any messages sent to a JMS Topic called '`priceUpdates`')
|
||||
to another local address '`jms.queue.priceForwarding`' (this corresponds
|
||||
to a local JMS queue called '`priceForwarding`'
|
||||
We define a divert called `prices-divert` that will divert any
|
||||
messages sent to the address `priceUpdates` to another local address
|
||||
`priceForwarding`.
|
||||
|
||||
We also specify a message filter string so only messages with the
|
||||
message property `office` with value `New York` will get diverted, all
|
||||
|
@ -106,13 +104,11 @@ diverts with an optional filter and transformer, here's an example
|
|||
non-exclusive divert, again from the divert example:
|
||||
|
||||
<divert name="order-divert">
|
||||
<address>jms.queue.orders</address>
|
||||
<forwarding-address>jms.topic.spyTopic</forwarding-address>
|
||||
<address>orders</address>
|
||||
<forwarding-address>spyTopic</forwarding-address>
|
||||
<exclusive>false</exclusive>
|
||||
</divert>
|
||||
|
||||
The above divert example takes a copy of every message sent to the
|
||||
address '`jms.queue.orders`' (Which corresponds to a JMS Queue called
|
||||
'`orders`') and sends it to a local address called
|
||||
'`jms.topic.SpyTopic`' (which corresponds to a JMS Topic called
|
||||
'`SpyTopic`').
|
||||
address '`orders`' and sends it to a local address called
|
||||
'`spyTopic`'.
|
||||
|
|
|
@ -289,7 +289,7 @@ consumer.
|
|||
Clustered Queue
|
||||
---------------
|
||||
|
||||
The `clustered-queue` example demonstrates a JMS queue deployed on two
|
||||
The `clustered-queue` example demonstrates a queue deployed on two
|
||||
different nodes. The two nodes are configured to form a cluster. We then
|
||||
create a consumer for the queue on each node, and we create a producer
|
||||
on only one of the nodes. We then send some messages via the producer,
|
||||
|
@ -487,8 +487,8 @@ standalone Apache ActiveMQ Artemis servers.
|
|||
JMS Context
|
||||
-----------
|
||||
|
||||
The `jms-context` example shows how to send and receive a message to a
|
||||
JMS Queue using Apache ActiveMQ Artemis by using a JMS Context.
|
||||
The `jms-context` example shows how to send and receive a message to/from an
|
||||
address/queue using Apache ActiveMQ Artemis by using a JMS Context.
|
||||
|
||||
A JMSContext is part of JMS 2.0 and combines the JMS Connection and
|
||||
Session Objects into a simple Interface.
|
||||
|
@ -550,7 +550,7 @@ Message Counter
|
|||
---------------
|
||||
|
||||
The `message-counters` example shows you how to use message counters to
|
||||
obtain message information for a JMS queue.
|
||||
obtain message information for a queue.
|
||||
|
||||
Message Group
|
||||
-------------
|
||||
|
@ -676,7 +676,7 @@ send messages.
|
|||
Queue
|
||||
-----
|
||||
|
||||
A simple example demonstrating a JMS queue.
|
||||
A simple example demonstrating a queue.
|
||||
|
||||
Message Redistribution
|
||||
----------------------
|
||||
|
@ -741,7 +741,7 @@ Scheduled Message
|
|||
-----------------
|
||||
|
||||
The `scheduled-message` example shows you how to send a scheduled
|
||||
message to a JMS Queue with Apache ActiveMQ Artemis. Scheduled messages won't get
|
||||
message to an address/queue with Apache ActiveMQ Artemis. Scheduled messages won't get
|
||||
delivered until a specified time in the future.
|
||||
|
||||
Security
|
||||
|
|
|
@ -212,7 +212,7 @@ It is therefore possible to go over the address limit by approximately:
|
|||
|
||||
'''total number of producers on address * producer window size'''
|
||||
|
||||
For example, if I have a JMS queue called "myqueue", I could set the
|
||||
For example, if I have a queue called "myqueue", I could set the
|
||||
maximum memory size to 10MiB, and the the server will control the number
|
||||
of credits sent to any producers which are sending any messages to
|
||||
myqueue such that the total messages in the queue never exceeds 10MiB.
|
||||
|
@ -242,13 +242,13 @@ memory of all subscriptions in the topic won't exceed max-size-bytes.
|
|||
Here's an example:
|
||||
|
||||
<address-settings>
|
||||
<address-setting match="jms.queue.exampleQueue">
|
||||
<address-setting match="exampleQueue">
|
||||
<max-size-bytes>100000</max-size-bytes>
|
||||
<address-full-policy>BLOCK</address-full-policy>
|
||||
</address-setting>
|
||||
</address-settings>
|
||||
|
||||
The above example would set the max size of the JMS queue "exampleQueue"
|
||||
The above example would set the max size of the queue "exampleQueue"
|
||||
to be 100000 bytes and would block any producers sending to that address
|
||||
to prevent that max size being exceeded.
|
||||
|
||||
|
|
|
@ -12,7 +12,7 @@ are only interested by the latest value for a particular stock.
|
|||
|
||||
Last-value queues are defined in the address-setting configuration:
|
||||
|
||||
<address-setting match="jms.queue.lastValueQueue">
|
||||
<address-setting match="lastValueQueue">
|
||||
<last-value-queue>true</last-value-queue>
|
||||
</address-setting>
|
||||
|
||||
|
|
|
@ -17,7 +17,7 @@ This is the native libraries distributed by Apache ActiveMQ Artemis:
|
|||
- We used to distributed libActiveMQAIO32.so until early 2017. While it's not available on the distribution it should still be possible to compile to a 32 bits environment if needed.
|
||||
|
||||
When using libaio, Apache ActiveMQ Artemis will always try loading these files as long
|
||||
as they are on the [library path](using-server.html#library-path)
|
||||
as they are on the [library path](using-server.md#library-path)
|
||||
|
||||
|
||||
## Runtime dependencies
|
||||
|
|
|
@ -47,8 +47,8 @@ following properties:
|
|||
Expiry address are defined in the address-setting configuration:
|
||||
|
||||
<!-- expired messages in exampleQueue will be sent to the expiry address expiryQueue -->
|
||||
<address-setting match="jms.queue.exampleQueue">
|
||||
<expiry-address>jms.queue.expiryQueue</expiry-address>
|
||||
<address-setting match="exampleQueue">
|
||||
<expiry-address>expiryQueue</expiry-address>
|
||||
</address-setting>
|
||||
|
||||
If messages are expired and no expiry address is specified, messages are
|
||||
|
|
|
@ -170,7 +170,7 @@ Let's take a brief look at these:
|
|||
### Java Message Service (JMS)
|
||||
|
||||
[JMS](http://en.wikipedia.org/wiki/Java_Message_Service) is part of
|
||||
Oracle's JEE specification. It's a Java API that encapsulates both message
|
||||
Oracle's Java EE specification. It's a Java API that encapsulates both message
|
||||
queue and publish-subscribe messaging patterns. JMS is a lowest common
|
||||
denominator specification - i.e. it was created to encapsulate common
|
||||
functionality of the already existing messaging systems that were
|
||||
|
|
|
@ -106,20 +106,6 @@ The standard Apache ActiveMQ Artemis core server uses two instances of the journ
|
|||
file has a `bindings` extension. File size is `1048576`, and it is
|
||||
located at the bindings folder.
|
||||
|
||||
- JMS journal.
|
||||
|
||||
This journal instance stores all JMS related data, This is basically
|
||||
any JMS Queues, Topics and Connection Factories and any JNDI
|
||||
bindings for these resources.
|
||||
|
||||
Any JMS Resources created via the management API will be persisted
|
||||
to this journal. Any resources configured via configuration files
|
||||
will not. The JMS Journal will only be created if JMS is being used.
|
||||
|
||||
The files on this journal are prefixed as `activemq-jms`. Each file
|
||||
has a `jms` extension. File size is `1048576`, and it is located at
|
||||
the bindings folder.
|
||||
|
||||
- Message journal.
|
||||
|
||||
This journal instance stores all message related data, including the
|
||||
|
|
|
@ -28,7 +28,7 @@ Why use Apache ActiveMQ Artemis? Here are just a few of the reasons:
|
|||
messaging system, and others you won't find anywhere else.
|
||||
|
||||
- Elegant, clean-cut design with minimal third party dependencies. Run
|
||||
ActiveMQ Artemis stand-alone, run it in integrated in your favourite JEE
|
||||
ActiveMQ Artemis stand-alone, run it in integrated in your favourite Java EE
|
||||
application server, or run it embedded inside your own product. It's
|
||||
up to you.
|
||||
|
||||
|
|
|
@ -5,7 +5,7 @@ The official Apache ActiveMQ Artemis project page is <http://activemq.apache.org
|
|||
## Software Download
|
||||
|
||||
The software can be download from the Download
|
||||
page:<http://activemq.apache.org/download.html>
|
||||
page:<http://activemq.apache.org/artemis/download.html>
|
||||
|
||||
## Project Information
|
||||
|
||||
|
|
|
@ -355,7 +355,7 @@ However if STOMP clients exit without sending a DISCONNECT frame or if
|
|||
they crash the server will have no way of knowing immediately whether
|
||||
the client is still alive or not. STOMP connections therefore default to
|
||||
a connection-ttl value of 1 minute (see chapter on
|
||||
[connection-ttl](#connection-ttl) for more information. This value can
|
||||
[connection-ttl](connection-ttl.md) for more information. This value can
|
||||
be overridden using the `connection-ttl-override` property or if you
|
||||
need a specific connectionTtl for your stomp connections without
|
||||
affecting the broker-wide `connection-ttl-override` setting, you can
|
||||
|
@ -524,7 +524,7 @@ message to a normal message, before sending it to the client.
|
|||
If a large message is compressed, the server will uncompressed it before
|
||||
sending it to stomp clients. The default value of
|
||||
`stompMinLargeMessageSize` is the same as the default value of
|
||||
[min-large-message-size](#large-messages.core.config).
|
||||
[min-large-message-size](large-messages.md#Configuring-Parameters).
|
||||
|
||||
### Stomp Over Web Sockets
|
||||
|
||||
|
|
|
@ -222,10 +222,7 @@ Here is an example of the plugin's configuration:
|
|||
and update the broker's authorization configuration in real-time. The default value is `true`.
|
||||
|
||||
The name of the queue or topic defined in LDAP will serve as the "match" for the security-setting, the permission value
|
||||
will be mapped from the ActiveMQ 5.x type to the Artemis type, and the role will be mapped as-is. It's worth noting that
|
||||
since the name of queue or topic coming from LDAP will server as the "match" for the security-setting the security-setting
|
||||
may not be applied as expected to JMS destinations since Artemis always prefixes JMS destinations with "jms.queue." or
|
||||
"jms.topic." as necessary.
|
||||
will be mapped from the ActiveMQ 5.x type to the Artemis type, and the role will be mapped as-is.
|
||||
|
||||
ActiveMQ 5.x only has 3 permission types - `read`, `write`, and `admin`. These permission types are described on their
|
||||
[website](http://activemq.apache.org/security.html). However, as described previously, ActiveMQ Artemis has 7 permission
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
#Detecting Slow Consumers
|
||||
# Detecting Slow Consumers
|
||||
|
||||
In this section we will discuss how Apache ActiveMQ Artemis can be configured to deal
|
||||
with slow consumers. A slow consumer with a server-side queue (e.g. JMS
|
||||
|
|
|
@ -36,7 +36,7 @@ consuming valuable CPU and network resources.
|
|||
Delayed redelivery is defined in the address-setting configuration:
|
||||
|
||||
<!-- delay redelivery of messages for 5s -->
|
||||
<address-setting match="jms.queue.exampleQueue">
|
||||
<address-setting match="exampleQueue">
|
||||
<!-- default is 1.0 -->
|
||||
<redelivery-delay-multiplier>1.5</redelivery-delay-multiplier>
|
||||
<!-- default is 0 (no delay) -->
|
||||
|
@ -104,8 +104,8 @@ Dead letter address is defined in the address-setting configuration:
|
|||
|
||||
<!-- undelivered messages in exampleQueue will be sent to the dead letter address
|
||||
deadLetterQueue after 3 unsuccessful delivery attempts -->
|
||||
<address-setting match="jms.queue.exampleQueue">
|
||||
<dead-letter-address>jms.queue.deadLetterQueue</dead-letter-address>
|
||||
<address-setting match="exampleQueue">
|
||||
<dead-letter-address>deadLetterQueue</dead-letter-address>
|
||||
<max-delivery-attempts>3</max-delivery-attempts>
|
||||
</address-setting>
|
||||
|
||||
|
|
Loading…
Reference in New Issue