logo资料库

Artemis 高性能的MQ.pdf

第1页 / 共445页
第2页 / 共445页
第3页 / 共445页
第4页 / 共445页
第5页 / 共445页
第6页 / 共445页
第7页 / 共445页
第8页 / 共445页
资料共445页,剩余部分请下载后查看
Introduction
Legal Notice
Preface
Project Info
Versions
Messaging Concepts
Architecture
Using the Server
Upgrading
Address Model
Using JMS
Using Core
Using AMQP
Mapping JMS Concepts to the Core API
The Client Classpath
Examples
Routing Messages With Wild Cards
Understanding the Apache ActiveMQ Artemis Wildcard Syntax
Filter Expressions
Persistence
Configuring Transports
Configuration Reload
Detecting Dead Connections
Detecting Slow Consumers
Avoiding Network Isolation
Detecting Broker Issues (Critical Analysis)
Resource Manager Configuration
Flow Control
Guarantees of sends and commits
Message Redelivery and Undelivered Messages
Message Expiry
Large Messages
Paging
Scheduled Messages
Last-Value Queues
Exclusive Queues
Message Grouping
Extra Acknowledge Modes
Management
Management Console
Security
Masking Passwords
Broker Plugins
Resource Limits
The JMS Bridge
Client Reconnection and Session Reattachment
Diverting and Splitting Message Flows
Core Bridges
Duplicate Message Detection
Clusters
High Availability and Failover
Graceful Server Shutdown
Libaio Native Libraries
Thread management
Logging
REST Interface
Embedding Apache ActiveMQ Artemis
Apache Karaf
Apache Tomcat
Spring Integration
CDI Integration
Intercepting Operations
Protocols and Interoperability
Tools
Maven Plugin
Unit Testing
Troubleshooting and Performance Tuning
Configuration Reference
Table of Contents Introduction Legal Notice Preface Project Info Versions Messaging Concepts Architecture Using the Server Upgrading Address Model Using JMS Using Core Using AMQP Mapping JMS Concepts to the Core API The Client Classpath Examples Routing Messages With Wild Cards Understanding the Apache ActiveMQ Artemis Wildcard Syntax Filter Expressions Persistence Configuring Transports Configuration Reload Detecting Dead Connections Detecting Slow Consumers Avoiding Network Isolation Detecting Broker Issues (Critical Analysis) Resource Manager Configuration 1.1 1.2 1.3 1.4 1.5 1.6 1.7 1.8 1.9 1.10 1.11 1.12 1.13 1.14 1.15 1.16 1.17 1.18 1.19 1.20 1.21 1.22 1.23 1.24 1.25 1.26 1.27 1
Flow Control Guarantees of sends and commits Message Redelivery and Undelivered Messages Message Expiry Large Messages Paging Scheduled Messages Last-Value Queues Exclusive Queues Message Grouping Extra Acknowledge Modes Management Management Console Security Masking Passwords Broker Plugins Resource Limits The JMS Bridge Client Reconnection and Session Reattachment Diverting and Splitting Message Flows Core Bridges Duplicate Message Detection Clusters High Availability and Failover Graceful Server Shutdown Libaio Native Libraries Thread management Logging REST Interface Embedding Apache ActiveMQ Artemis 1.28 1.29 1.30 1.31 1.32 1.33 1.34 1.35 1.36 1.37 1.38 1.39 1.40 1.41 1.42 1.43 1.44 1.45 1.46 1.47 1.48 1.49 1.50 1.51 1.52 1.53 1.54 1.55 1.56 1.57 2
Apache Karaf Apache Tomcat Spring Integration CDI Integration Intercepting Operations Protocols and Interoperability Tools Maven Plugin Unit Testing Troubleshooting and Performance Tuning Configuration Reference 1.58 1.59 1.60 1.61 1.62 1.63 1.64 1.65 1.66 1.67 1.68 3
Introduction Apache ActiveMQ Artemis User Manual The User manual is an in depth manual on all aspects of Apache ActiveMQ Artemis 4
Legal Notice Legal Notice Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to You under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. 5
Preface Preface What is Apache ActiveMQ Artemis? Apache ActiveMQ Artemis is an open source project to build a multi-protocol, embeddable, very high performance, clustered, asynchronous messaging system. Apache ActiveMQ Artemis is an example of Message Oriented Middleware (MoM). For a description of MoMs and other messaging concepts please see the Messaging Concepts. Why use Apache ActiveMQ Artemis? Here are just a few of the reasons: 100% open source software. Apache ActiveMQ Artemis is licensed using the Apache Software License v 2.0 to minimise barriers to adoption. Apache ActiveMQ Artemis is designed with usability in mind. Written in Java. Runs on any platform with a Java 8+ runtime, that's everything from Windows desktops to IBM mainframes. Amazing performance. Our ground-breaking high performance journal provides persistent messaging performance at rates normally seen for non-persistent messaging, our non-persistent messaging performance rocks the boat too. Full feature set. All the features you'd expect in any serious 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 Java EE application server, or run it embedded inside your own product. It's up to you. Seamless high availability. We provide a HA solution with automatic client failover so you can guarantee zero message loss or duplication in event of server failure. Hugely flexible clustering. Create clusters of servers that know how to load balance messages. Link geographically distributed clusters over unreliable connections to form a global network. Configure routing of messages in a highly flexible way. 6
Project Info Project Information The official Apache ActiveMQ Artemis project page is http://activemq.apache.org/artemis/. Software Download The software can be download from the Download page:http://activemq.apache.org/artemis/download.html Project Information If you have any user questions please use our user forum If you have development related questions, please use our developer forum Pop in and chat to us in our IRC channel Apache ActiveMQ Artemis Git repository is https://github.com/apache/activemq- artemis All release tags are available from https://github.com/apache/activemq- artemis/releases And many thanks to all our contributors, both old and new who helped create Apache ActiveMQ Artemis. 7
Versions Versions This chapter provides the information for each release: A link to the full release notes which includes all issues resolved in the release. A brief list of "highlights." If necessary, specific steps required when upgrading from the previous version. NOTE: If the upgrade spans multiple versions then the steps from each version need to be followed in order. NOTE: Follow the general upgrade procedure outlined in the Upgrading the Broker chapter in addition to any version-specific upgrade instructions. 2.5.0 Full release notes. Highlights: Exclusive consumers. Equivalent ActiveMQ 5.x Virtual Topic naming abilities. SSL Certificate revocation list. Last-value queue support for OpenWire. Support masked passwords in bootstrap.xm and login.config Configurable broker plugin implementation for logging various broker events (i.e. LoggingActiveMQServerPlugin ). Option to use OpenSSL provider for Netty via the sslProvider URL parameter. Enable splitting of broker.xml into multiple files. Enhanced message count and size metrics for queues. Upgrading from 2.4.0 1. Due to changes from ARTEMIS-1644 any acceptor that needs to be compatible with HornetQ and/or Artemis 1.x clients needs to have anycastPrefix=jms.queue.;multicastPrefix=jms.topic. in the acceptor url. This prefix used to be configured automatically behind the scenes when the broker detected these old types of clients, but that broke certain use-cases with no possible work-around. See ARTEMIS-1644 for more details. 8
分享到:
收藏