Red Hat AMQ 6
As of February 2025, Red Hat is no longer supporting Red Hat AMQ 6. If you are using AMQ 6, please upgrade: Migrating to AMQ 7.Dieser Inhalt ist in der von Ihnen ausgewählten Sprache nicht verfügbar.
Product Introduction
How can Red Hat JBoss A-MQ help integrate your environment
Copyright © 2011-2015 Red Hat, Inc. and/or its affiliates.
Abstract
Chapter 1. What is JBoss A-MQ? Link kopierenLink in die Zwischenablage kopiert!
Abstract
Overview Link kopierenLink in die Zwischenablage kopiert!
Broker Link kopierenLink in die Zwischenablage kopiert!
Messaging clients Link kopierenLink in die Zwischenablage kopiert!
Messages Link kopierenLink in die Zwischenablage kopiert!
Features Link kopierenLink in die Zwischenablage kopiert!
- centralized configuration for brokers
- centralized provisioning of networks brokers
- centralized provisioning of master/slave groups
- high-speed journalling
- fail-over capabilities
- blob messages
- extensive connectivity options
Chapter 2. Introduction to JMS Link kopierenLink in die Zwischenablage kopiert!
Abstract
2.1. Standard JMS Features Link kopierenLink in die Zwischenablage kopiert!
Overview Link kopierenLink in die Zwischenablage kopiert!
- point-to-point messaging
- publish and subscribe messaging
- request/reply messaging
- persistent and non-persistent messages
- JMS transactions
- XA transactions
Point-to-point messaging Link kopierenLink in die Zwischenablage kopiert!
Publish/subscribe messaging Link kopierenLink in die Zwischenablage kopiert!
Request/reply messaging Link kopierenLink in die Zwischenablage kopiert!
JMSReplyTo
header, and the consumer identifies the request message to which the reply corresponds using the reply message's JMSCorrelationID
property.
Persistent and non-persistent messages Link kopierenLink in die Zwischenablage kopiert!
- disable persistence from a message producer by changing its default delivery mode to non-persistent
- disable persistence for a specific message by changing the messages delivery mode to non-persistent
- change the message store the broker uses to persist messagesJBoss A-MQ provides a number of persistence adapters for connecting to different message stores.
- deactivate the broker's persistence mechanismWarningDeactivating the broker's persistence mechanism means that no messages will be persisted even if their delivery mode is set to persistent. This step should only be used for testing or situations where persistence will never be needed.
JMS transactions Link kopierenLink in die Zwischenablage kopiert!
commit()
. The broker caches all of these messages in a transaction store until it receives the commit
command, then dispatches all of them, in batch, to their destination.
XA transactions Link kopierenLink in die Zwischenablage kopiert!
commit()
.
2.2. JMS Message Basics Link kopierenLink in die Zwischenablage kopiert!
Overview Link kopierenLink in die Zwischenablage kopiert!
Message anatomy Link kopierenLink in die Zwischenablage kopiert!
- headers
- properties
- body
Figure 2.1. Anatomy of a JMS message
Message body Link kopierenLink in die Zwischenablage kopiert!
Message Type | Description |
---|---|
Message | Base message type. Payload is empty; only headers and properties are active. Typically used for simple event notification. |
TextMessage | Payload of type String. Typically used to transmit simple text and XML data. |
MapMessage | Payload of name/value pairs, with names of type String and values of Java primitive type. |
BytesMessage | Payload is an array of uninterpreted bytes. |
StreamMessage | Payload is a stream of Java primitive types, filled and read sequentially. |
ObjectMessage | Payload is a serializable Java object. Usually used for complex Java objects, but also supports Java collections. |
Message headers Link kopierenLink in die Zwischenablage kopiert!
JMS
prefix and outlined in the JMS specification.
send()
method and some are automatically set by the broker. The remaining headers are left to the user to set when a message is created.
Message properties Link kopierenLink in die Zwischenablage kopiert!
JMSActiveMQBroker
prefix.
JMSX
prefix. Vendors are not required to support all of these properties.
2.3. JMS Development Link kopierenLink in die Zwischenablage kopiert!
Overview Link kopierenLink in die Zwischenablage kopiert!
Basic application components Link kopierenLink in die Zwischenablage kopiert!
- Connection factory
- Connection factories are administered objects that clients use to create connections to a message broker. You can optimize some messaging characteristics by enabling, disabling, or otherwise modifying the values of certain connection factory properties.
- Connection
- Connections are the objects clients use to specify a transport protocol and credentials for sustained interaction with a broker.
- Session
- Sessions are created by a client on a connection established with a broker. They define whether its messages will be transacted and the acknowledgement mode when they are not. Clients can create multiple sessions on a single connection.
- Destinations
- Destinations are created by a client on a per-session basis. They are client-side representations of the queue or topic to which messages are sent. The message broker maintains its own representations of the destinations as well.
- Producer
- Producers are client-side objects that create and send messages to a broker. They are instances of the
MessageProducer
interface and are created on a per-session basis.TheMessageProducer
interface provides methods not only for sending messages, but also for setting various message headers, includingJMSDeliveryMode
which controls message persistence,JMSPriority
which controls message priority, andJMSExpiration
which controls a message's lifespan. - Consumer
- Consumers are client-side objects that process messages retrieved from a broker. They are instances of the
MessageConsumer
interface and are created on a per-session basis.TheMessageConsumer
interface can consume messages synchronously by using one of theMessageConsumer.receive()
methods, or asynchronously by registering aMessageListener
with theMessageConsumer.setMessageListener()
method. With aMessageListener
registered on a destination, messages arriving at the destination invoke the consumer'sMessageListener.onMessage()
method, freeing the consumer from having to repeatedly poll the destination for messages. - Messages
- Messages are the backbone of a messaging system. They are objects that contain not only the data payload, but also the required header and optional properties needed to transfer them from one client application to another. See Section 2.2, “JMS Message Basics”.
Development steps Link kopierenLink in die Zwischenablage kopiert!
Figure 2.2. Messaging sequence
- Get a connection factory.The process for getting a connection factory depends on your environment. It is typical to use JNDI to obtain the connection factory. JBoss A-MQ allows you to instantiate connection factories directly in consumer code or obtain connection factories using Spring in addition to using JNDI.
- Create a connection from the connection factory as shown in Example 2.1, “Getting a Connection”.
Example 2.1. Getting a Connection
connection=connectionFactory.createConnection();
connection=connectionFactory.createConnection();
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - Start the connection using the connection's
start()
method. - Create a session from the connection.
Example 2.2. Creating a Session
session=connection.createSession(false, Session.AUTO_ACKNOWLEDGE);
session=connection.createSession(false, Session.AUTO_ACKNOWLEDGE);
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - Create a destination from the session.Example 2.3, “Creating a Queue” shows code for creating a queue called
foo
.Example 2.3. Creating a Queue
destination=session.createQueue("FOO.QUEUE");
destination=session.createQueue("FOO.QUEUE");
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - Create objects for producing and consuming messages.
- Create a producer as shown in Example 2.4, “Creating a Message Producer”.
Example 2.4. Creating a Message Producer
producer=session.createProducer(destination);
producer=session.createProducer(destination);
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - Create a consumer as shown in Example 2.5, “Creating a Consumer”.
Example 2.5. Creating a Consumer
consumer=session.createConsumer(destination);
consumer=session.createConsumer(destination);
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
- Create a message from the session object.Example 2.6, “Creating a Text Message” shows code for creating a text message.
Example 2.6. Creating a Text Message
message=session.createTextMessage("This is a foo test.");
message=session.createTextMessage("This is a foo test.");
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - Send and receive messages.
- Send messages from the producer as shown in Example 2.7, “Sending a Message”.
Example 2.7. Sending a Message
producer.send(message);
producer.send(message);
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - Receive messages from the consumer.Example 2.8, “Receiving a Message” shows code for synchronously receiving a text message.
Example 2.8. Receiving a Message
message = (TextMessage)consumer.receive();
message = (TextMessage)consumer.receive();
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
- Close all JMS resources.
Chapter 3. Red Hat JBoss A-MQ Features Link kopierenLink in die Zwischenablage kopiert!
Abstract
3.1. Flexibility Link kopierenLink in die Zwischenablage kopiert!
Overview Link kopierenLink in die Zwischenablage kopiert!
- support for a variety of transport protocols
- APIs for non-Java clients
- deployment and container options
- specialized destination types
Connectivity options Link kopierenLink in die Zwischenablage kopiert!
- OpenWire—The default wire protocol used to serialize data for transmission over the network connection. It uses a binary encoding format. OpenWire supports native JMS client applications and provides client libraries for C, C++, and .NET.
- Extensive Messaging and Presence Protocol (XMPP)—Enables instant messaging clients to communicate with the broker.
- Hypertext Transfer Protocol/Hypertext Transfer Protocol over SSL (HTTP/S)—Favored protocol for dealing with a firewall inserted between the broker and its clients.
- IP multicast—Provides one-to-many communications over an IP network. It enables brokers to discover other brokers in setting up a network of brokers, and clients to discover and establish connections with brokers.
- New I/O API (NIO)—Provides better scalability than TCP for client connections to the broker.
- Secure Sockets Layer (SSL)—Provides secure communications between clients and the broker.
- Streaming Text Oriented Messaging Protocol (STOMP)—A platform-neutral protocol that supports clients written in scripting languages (Perl, PHP, Python, and Ruby) in addition to clients written in Java, .NET, C, and C++.
- Transmission Control Protocol (TCP)—For most use cases, this is the default network protocol.
- User Datagram Protocol (UDP)—Also deals with a firewall inserted between the broker and its clients. However, UDP guarantees neither packet delivery nor packet order.
- Virtual Machine (VM)—Provides connection between an embedded broker and its clients.
Client-side APIs Link kopierenLink in die Zwischenablage kopiert!
- C
- C++
- .NET
- Perl
- PHP
- Python
- Ruby
Container options Link kopierenLink in die Zwischenablage kopiert!
- Red Hat JBoss Fuse
- Apache Tomcat
- Apache Geronimo
- Jetty
- JBoss
- WebSphere
Composite destinations Link kopierenLink in die Zwischenablage kopiert!
Virtual destinations Link kopierenLink in die Zwischenablage kopiert!
Consumer.
<qname>.VirtualTopic.
<tname>.
3.2. Centralized Configuration, Deployment, and Management Link kopierenLink in die Zwischenablage kopiert!
Abstract
Overview Link kopierenLink in die Zwischenablage kopiert!
- automating the configuration of failover groups, networks of brokers, and master/slave groupsThe ensemble knows the connection details for all of the brokers in the fabric and uses that information to configure brokers into different configurations. Because the information is updated in real time, the broker configurations are always correct.
- automating client connection and failover configurationWhen brokers are configured into a fabric, messaging clients can use a special discovery protocol that discovers broker connection details from the fabric's ensemble. The fabric discovery connection will also automatically failover to other brokers in a failover cluster without needing to know any details about what brokers are deployed.
- centralizing configuration informationAll of the configuration for each container in the fabric, including details about which bundles are deployed, are stored in the ensemble. Any of the configurations can be edited from a remote location and directly applied to any container in the fabric.
- simplifying the enforcement of common configuration policiesThe ensemble organizes configuration information into profiles that can inherit from each other. This makes it easy to enforce common policies about how brokers need to be configured using base profiles.
- centralizing management and monitoring functionalityUsing the management console or the JBoss A-MQ command console you can update configuration profiles, deploy new containers, shutdown containers, and get runtime metrics for any of the containers in the fabric
Anatomy of a fabric Link kopierenLink in die Zwischenablage kopiert!
Figure 3.1. A Fabric
- Fabric Ensemble—a group of one or more Fabric Servers that work together to maintain the registry and other services that provide the glue for the fabric
- Fabric Server—a container that hosts the runtime functionality for the ensemble
- Fabric Container—an Apache Karaf container that is managed by a Fabric Agent
- Fabric Agent—a process that communicates with the ensemble to manage the container's configuration
Fabric Ensemble Link kopierenLink in die Zwischenablage kopiert!
- centralized configuration—stores the configuration profiles for all of the containers in the fabric. The configuration profiles are organized by versions and allow for inheritance between profiles.
- runtime information—stores status for all of the containers in the fabric. The runtime information stored in the database includes the status of the container, the address of any endpoints and messaging destinations exposed by the container, the JMX URL used to monitor the container, the number of client's accessing services deployed in the container, etc.
Profiles Link kopierenLink in die Zwischenablage kopiert!
- features—XML specifications that define a collection of bundles, jars, and other artifacts needed to implement a set of functionality
- bundles—the OSGi bundles or Fuse Application Bundles to load into a container
- repositories—the URIs from which the container can download artifacts
- configuration files—OSGI Admin PIDs that are loaded by the container's OSGi admin service and applied to the services running in the container
Fabric Agents Link kopierenLink in die Zwischenablage kopiert!
- manage a container's configuration and provisioning—the agent regularly checks to see what profiles are assigned to the container and if the container is properly configured and running the appropriate set of services. If there is a discrepancy, the agent updates the container to eliminate the discrepancy. It flushes any extraneous bundles and services and installs any bundles and services that are missing.
- updating the ensemble's runtime information—the agent reports back any changes to the container's runtime status. This includes information about the containers provisioning status, the endpoints and messaging destination exposed by the container, etc.
Working with a fabric Link kopierenLink in die Zwischenablage kopiert!
http://localhost:8181
. The Fuse Management Console allows you to:
- add containers to a fabric
- create profiles and versions
- edit profiles
- assign profiles to containers
- monitor the health of all containers in a fabric
- create and delete queues and topics
- inspect all MBeans registered by JBoss A-MQ
- browse the messages on a queue or topic
- send messages to a queue or topic
- graphically view the producers, destinations, and consumers for all queues or topics or for a single queue or topic
- chart the performance metrics of all queues and topics or for a single queue or topic
3.3. Fault Tolerance Link kopierenLink in die Zwischenablage kopiert!
Overview Link kopierenLink in die Zwischenablage kopiert!
- deploying multiple brokers into a topology that allows one broker to pick up the duties of a failed broker
- configuring clients to fail over to a new broker in the event that its current broker fails
Master/Slave topologies Link kopierenLink in die Zwischenablage kopiert!
- Shared file system—the brokers in the cluster use the same file system to maintain their state. The master broker maintains a lock to the file system. Brokers polling for the lock or attempting to connect to the message store after the master is established automatically become slaves.
- Shared database—the brokers in the cluster share the same database. The broker that gets the lock to the database becomes the master. Brokers polling for the lock after the master is established automatically become slaves.
Failover protocol Link kopierenLink in die Zwischenablage kopiert!
3.4. Reliability Link kopierenLink in die Zwischenablage kopiert!
Overview Link kopierenLink in die Zwischenablage kopiert!
- message autonomy
- store and forward delivery for persistent messages
- message acknowledgments
Message redelivery Link kopierenLink in die Zwischenablage kopiert!
- Using a transacted session, the producer calls
rollback()
on the session, or closes before callingcommit()
. - With
CLIENT_ACKNOWLEDGE
specified on a transacted session, the producer callsrecover()
on the session. - The consumer rejects delivery of a message (as when a message is incorrectly formatted).
Dead letter queue Link kopierenLink in die Zwischenablage kopiert!
ActiveMQ.DLQ
. When a message is sent to the dead letter queue, an advisory message is sent to the topic ActiveMQ.Advisory.MessageDLQd.*
.
Durable subscribers Link kopierenLink in die Zwischenablage kopiert!
Exclusive consumers Link kopierenLink in die Zwischenablage kopiert!
Message groups Link kopierenLink in die Zwischenablage kopiert!
JMSXGroupID
. It also facilitates concurrency as multiple consumers can parallel process different message groups, each identified by a unique JMSXGroupID
.
JMSXGroupID
property in the message header. The broker dispatches all messages tagged with the same JMSXGroupID
value to a single consumer. If that consumer becomes unavailable, the broker dispatches subsequent messages in the group to another consumer.
Retroactive consumers Link kopierenLink in die Zwischenablage kopiert!
- Identifying the consumer as retroactive; for example:
Topic topic=session.createTopic("foo.bar.topicA?consumer.retroactive=true");
Topic topic=session.createTopic("foo.bar.topicA?consumer.retroactive=true");
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - Setting the cache size for the topic destination in the broker's
<destinationPolicy>
3.5. Scalability and High Performance Link kopierenLink in die Zwischenablage kopiert!
Overview Link kopierenLink in die Zwischenablage kopiert!
- Horizontal scalingCreate networks of brokers to vastly increase the number of brokers and potentially the number of producers and consumers.
- Vertical scalingEnable individual brokers to handle more connections—for example (when possible), use embedded brokers and VM transports, transactions, nonpersistent messages with the failover transport set to cache asynchronous messages; allocate additional memory; tune the OpenWire protocol; optimize the TCP transport.
Network of brokers Link kopierenLink in die Zwischenablage kopiert!
Figure 3.2. Network of Brokers Example
Blob messages Link kopierenLink in die Zwischenablage kopiert!
InputStream
to the actual data.
Stream messages Link kopierenLink in die Zwischenablage kopiert!
IOStream
. The broker chunks OutputStream
data received from the producer and dispatches each chunk as a JMS message. On the consumer, a corresponding InputStream
must reassemble the data chunks.
JMSXGroupID
value are pinned to a single consumer. Using streams with queue destinations that connect to multiple receivers, regular or exclusive, does not affect message order. However, using streams with more than one producer could interfere with message ordering.
Scheduled message delivery Link kopierenLink in die Zwischenablage kopiert!
org.apache.activemq.ScheduledMessage
interface, you can schedule when messages are dispatched to a consumer. The broker stores scheduled messages persistently, so they survive broker failure and are dispatched upon broker startup.
ScheduledMessage
properties appended to the transport connector enable fine-grained scheduling:
AMQ_SCHEDULED_DELAY
—Time in milliseconds to delay dispatch.AMQ_SCHEDULED_PERIOD
—Time in milliseconds to wait after invoking schedule to dispatch first message.AMQ_SCHEDULED_REPEAT
—Maximum number of times to reschedule any message for dispatch.AMQ_SCHEDULED_CRON
—Use the specifiedcron
entry [string] to schedule a single-message dispatch.
Consumer clusters Link kopierenLink in die Zwischenablage kopiert!
3.6. Simplified Administration Link kopierenLink in die Zwischenablage kopiert!
Overview Link kopierenLink in die Zwischenablage kopiert!
Advisory messages Link kopierenLink in die Zwischenablage kopiert!
Command Agent Link kopierenLink in die Zwischenablage kopiert!
ActiveMQ.Agent
topic for messages. It processes all commands that are submitted as JMS text messages and posts the results back to ActiveMQ.Agent
.
Interceptor plug-ins Link kopierenLink in die Zwischenablage kopiert!
- Authentication—Two plug-ins; one provides Simple authentication, and the other provides JAAS authentication.
- Central timestamp—Updates the timestamp on messages as they arrive at the broker. Useful when clients' system clocks are out-of-sync with the broker's clock.
- Enhanced logging—Enables you to log messages sent or acknowledged on the broker.
- Statistics—Sends statistics about a running broker to the destination
ActiveMQ.Statistics.Broker
and statistics about a destination to the destinationActiveMQ.Statistics.Destination.<destination_name>
.You retrieve these statistics by sending an empty message to their corresponding destination. - Visualization—Two plug-ins; each generates a graph file for different broker components, which you can display using several publicly available visualization tools.The
connectionDotFilePlugin
generates graphs of the broker's connections and associated clients. ThedestinationDotFilePlugin
generates a graph of the destination hierarchies for all queues and topics in the broker.
JMX Link kopierenLink in die Zwischenablage kopiert!
management console Link kopierenLink in die Zwischenablage kopiert!
JBoss Operations Network Link kopierenLink in die Zwischenablage kopiert!
Other 3rd party administrative tools Link kopierenLink in die Zwischenablage kopiert!
Chapter 4. The Major Widgets Use Case Link kopierenLink in die Zwischenablage kopiert!
Abstract
Overview Link kopierenLink in die Zwischenablage kopiert!
Major Widgets business model Link kopierenLink in die Zwischenablage kopiert!
Major Widgets integration solution Link kopierenLink in die Zwischenablage kopiert!
- Web service clients are provided for customers to make orders
- a content-based router is used to receive orders from the Web service ordering clients and to send the order to the appropriate store's message queue
- two JBoss A-MQ instances are deployed in a master/slave cluster to ensure that orders are never lost due to a broker failure
- each store uses a JBoss A-MQ client to do the in-store order processing
Figure 4.1. Major Widgets integration solution
Fault tolerance Link kopierenLink in die Zwischenablage kopiert!
Chapter 5. Getting More Information Link kopierenLink in die Zwischenablage kopiert!
Abstract
5.1. Red Hat Documentation Link kopierenLink in die Zwischenablage kopiert!
Overview Link kopierenLink in die Zwischenablage kopiert!
Basics Link kopierenLink in die Zwischenablage kopiert!
- Red Hat JBoss A-MQ Installation GuideProvides detailed instructions for installing the Red Hat JBoss A-MQ software on Windows, Linux, Unix, and OS X platforms, using the binary distributions or building from source code. It also lays out the prerequisites needed to ensure a successful installation.
- Red Hat JBoss A-MQ Migration GuideDescribes all changes made to the Red Hat JBoss A-MQ software and provides instructions for integrating the changes into existing applications.
- Red Hat JBoss A-MQ Client Connectivity GuideDescribes each of the supported transport options and connectivity protocols in detail and includes code examples.
- Red Hat JBoss A-MQ Configuring Broker PersistenceDescribes the basic concepts of message persistence and provides detailed information on the supported message stores: KahaDB and JDBC database with/without journaling. It also describes how to use message cursors to improve the scalability of the message store.
- Red Hat JBoss A-MQ Using Networks of BrokersDescribes basic network of brokers concepts and topologies, network connectors, discovery protocols for dynamically discovering and reconnecting to brokers in a network, and balancing consumer and producer loads.
- Red Hat JBoss A-MQ Fault Tolerant MessagingDescribes how to implement fault tolerance using a master/slave cluster.
- Red Hat JBoss A-MQ Tuning GuideDescribes techniques for fine tuning your broker's performance.
- Red Hat JBoss A-MQ Security GuideDescribes how to secure the communications between your client applications and the broker. It also describes how to secure access to the broker's administrative interfaces.
System administrators Link kopierenLink in die Zwischenablage kopiert!
- Red Hat JBoss A-MQ Installation GuideProvides detailed instructions for installing the Red Hat JBoss A-MQ software on Windows, Linux, Unix, and OS X platforms, using the binary distributions or building from source code. It also lays out the prerequisites needed to ensure a successful installation.
- Red Hat JBoss A-MQ Migration GuideDescribes all of the latest changes made to the Red Hat JBoss A-MQ software and, where necessary, provides instructions for integrating the changes into existing systems.
- Red Hat JBoss A-MQ Managing and Monitoring a BrokerProvides detailed instructions for managing a Red Hat JBoss A-MQ deployment.
- Red Hat JBoss A-MQ Security GuideDescribes how to secure transport protocols and Java clients, how to set up JAAS authentication on broker-to-broker configurations, and how to secure Red Hat JBoss A-MQ JMX connectors.
- Red Hat JBoss Fuse Fuse Management Console User GuideDescribes how to use the management console to monitor distributed Red Hat JBoss A-MQ deployments.
- Describes how to use JBoss Operations Network to monitor Red Hat JBoss A-MQ.
5.2. Other Resources Link kopierenLink in die Zwischenablage kopiert!
Webinars and Videos Link kopierenLink in die Zwischenablage kopiert!
Third party books and articles Link kopierenLink in die Zwischenablage kopiert!
- ActiveMQ in Action (Snyder, Bosanac, & Davies)Written by the ActiveMQ developers, ActiveMQ in Action is the definitive guide to understanding and working with Apache ActiveMQ.Starting off with explaining JMS fundamentals, it uses a running use case to quickly explain and demonstrate how to use ActiveMQ's many features and functionality to build increasingly complex and robust messaging systems.
- Camel in Action (Ibsen & Anstey)Written by the Camel developers, Camel in Action is the definitive guide to understanding and working with Apache Camel.Tutorial-like and full of small examples, it shows how to work with the integration patterns. Starting with core concepts (sending, receiving, routing, and transforming data), it then shows the entire life cycle—diving into testing, dealing with errors, scaling, deploying, and monitoring applications.
- Spring into Action (Craig Walls)Spring in Action, Third Edition, describes the latest features, tools, and practices that Spring offers Java developers. It introduces Spring's core concepts, then launches into a hands-on exploration of the framework.It shows how to build simple and efficient JEE applications, then goes on to describe how to handle and solve more complex integration problems, such as persistence, asynchronous messaging, creating and consuming remote services, and so on.
- ActiveMQ is Ready for Prime Time (Rob Davies)This blog describes the many ways ActiveMQ has been deployed in demanding enterprise environments and provides case studies that demonstrate how ActiveMQ provides reliable connectivity not only between remote data centers, but also over unreliable transports, such as dial-up and satellite communications.You can read this article on Rob Davies blog.
Apache documentation Link kopierenLink in die Zwischenablage kopiert!
Index Link kopierenLink in die Zwischenablage kopiert!
A
- active consumers, Network of brokers
- ActiveMQ.Agent topic, Command Agent
- administration
- JBoss Operations Network, JBoss Operations Network
- JMX, JMX
- management console, management console
- third-party tools, Other 3rd party administrative tools
- advisory messages, Advisory messages
- authentication interceptors, Interceptor plug-ins
B
- blob (binary large objects) messages, Blob messages
- broker
- advisory topics, Advisory messages
- described, Broker
- feature set, Features
C
- central timestamp interceptor, Interceptor plug-ins
- client-side APIs, Client-side APIs
- clients, Messaging clients
- active consumers, Network of brokers
- broadcasting messages through a topic to a pool of queue subscribers, Virtual destinations
- consumer, Basic application components
- multiple destinations, concurrently sending the same message to, Composite destinations
- producer, Basic application components
- publishers, Publish/subscribe messaging
- receivers, Point-to-point messaging
- senders, Point-to-point messaging
- subscribers, Publish/subscribe messaging
- command agent, Command Agent
- composite destinations, Composite destinations
- configuration
- connection, Basic application components
- creating, Development steps
- connection factory, Basic application components
- connectivity options, Connectivity options
- consumer, Basic application components
- creating, Development steps
- MessageConsumer interface, Basic application components
- receiving messages, Basic application components, Development steps
- consumer clusters, Consumer clusters
- container options, Container options
D
- dead letter queue, Dead letter queue
- Destination, Basic application components
- creating, Development steps
- durable subscribers, Durable subscribers
E
- enhanced logging interceptor, Interceptor plug-ins
- ensemble, Fabric Ensemble
- exclusive consumers, Exclusive consumers
F
- fabric
- agent, Fabric Agents
- ensemble, Fabric Ensemble
- profiles, Profiles
- versions, Profiles
- Fabric Agent, Fabric Agents
- Fabric Ensemble, Fabric Ensemble
- failover protocol, Failover protocol
- fault tolerance, Fault Tolerance, Major Widgets integration solution, Fault tolerance
- master/slave broker topologies, Master/Slave topologies
- network of brokers, Network of brokers
H
- horizontal scaling, Overview
I
- interceptor plug-ins, Interceptor plug-ins
J
- JBoss Operations Network, JBoss Operations Network
- JMS application components, Basic application components
- JMS message headers, Message headers
- JMSDeliveryMode, Persistent and non-persistent messages
- JMSReplyTo, Request/reply messaging
- JMSXGroupID, Message groups, Stream messages
- send(), Message headers
- JMS message properties, Message properties
- JMS-defined, Message properties
- JMSCorrelationID, Request/reply messaging
- user-defined, Message properties
- vendor-specific, Message properties
- JMS messages, Messages, Overview, Basic application components
- anatomy, Message anatomy
- body, Message body
- creating, Development steps
- headers, Message headers
- properties, Message properties
- receiving, Development steps
- sending, Development steps
- types, Message body
- JMS transactions, JMS transactions
- JMX, JMX
M
- management console, management console
- master/slave broker topologies, Master/Slave topologies
- network of brokers, Network of brokers
- shared file system, Master/Slave topologies
- shared JDBC database, Master/Slave topologies
- message groups, Message groups
- JMSXGroupID header, Stream messages
- stream messages, Stream messages
- message redelivery, Message redelivery
- MessageConsumer, Basic application components
- MessageProducer, Basic application components
- messages, Messages
- messaging clients (see clients)
- messaging domains
- point-to-point, Point-to-point messaging
- publish/subscribe (Pub/Sub), Publish/subscribe messaging
N
- network connectors, Network of brokers
- network of brokers, Network of brokers
- non-persistent messages, Persistent and non-persistent messages
- non-persistent messaging, Persistent and non-persistent messages
P
- persistent messages, Persistent and non-persistent messages
- persistent messaging, Persistent and non-persistent messages
- point-to-point messaging, Point-to-point messaging
- policies
- destination, Advisory messages
- redelivery, Message redelivery
- producer, Basic application components
- creating, Development steps
- default destination, Basic application components
- described, Point-to-point messaging
- MessageProducer interface, Basic application components
- sending messages, Basic application components, Development steps
- setting JMS headers and properties, Basic application components
- publish/subscribe (Pub/Sub) messaging, Publish/subscribe messaging
Q
- queue-based messaging, Point-to-point messaging
R
- reliability, Overview
- reliable messaging system, Overview
- request/reply messaging, Request/reply messaging
- JMSCorrelationID message property, Request/reply messaging
- JMSReplyTo message header, Request/reply messaging
- retroactive consumers, Retroactive consumers
S
- scheduled message delivery, Scheduled message delivery
- Session, Basic application components
- creating, Development steps
- statistics interceptor, Interceptor plug-ins
- store and forward delivery mode, Network of brokers
- stream messages, Stream messages
- vs blob messages, Blob messages
T
- topic-based messaging, Publish/subscribe messaging
- transactions
- JMS, JMS transactions
- XA, XA transactions
V
- vertical scaling, Overview
- virtual destinations, Virtual destinations
- visualization interceptors, Interceptor plug-ins
W
- wildcards
- composite destinations, Composite destinations
X
- XA transactions, XA transactions
Legal Notice Link kopierenLink in die Zwischenablage kopiert!
Trademark Disclaimer