Mirror of Apache ActiveMQ Artemis
Go to file
Clebert Suconic d79762fa04 ARTEMIS-2205 Refactor AMQP Processing into Netty Thread
These improvements were also part of this task:
- Routing is now cached as much as possible.
- A new Runnable is avoided for each individual message,
  since we use the Netty executor to perform delivery

https://issues.apache.org/jira/browse/ARTEMIS-2205
2019-01-10 16:39:56 +01:00
.mvn/wrapper ARTEMIS-613 Artemis build enhancements 2016-07-05 15:13:35 -04:00
.settings ACTIVEMQ6-1 - Initial HornetQ Donation Commit 2014-11-10 10:31:25 -06:00
artemis-boot [maven-release-plugin] prepare for next development iteration 2018-05-16 11:03:26 -04:00
artemis-cdi-client ARTEMIS-1954 eliminate all possible usage of JMSServerManager 2018-07-12 14:24:44 -04:00
artemis-cli ARTEMIS-2205 Refactor AMQP Processing into Netty Thread 2019-01-10 16:39:56 +01:00
artemis-commons NO-JIRA improve logging for test System prop cleanup 2018-11-15 20:18:19 -05:00
artemis-core-client ARTEMIS-2205 Refactor AMQP Processing into Netty Thread 2019-01-10 16:39:56 +01:00
artemis-core-client-all [maven-release-plugin] prepare for next development iteration 2018-05-16 11:03:26 -04:00
artemis-core-client-osgi [maven-release-plugin] prepare for next development iteration 2018-05-16 11:03:26 -04:00
artemis-distribution ARTEMIS-2162 Remove -XX:+AggressiveOpts to improve JDK 11 compatibility 2018-12-13 10:55:30 -06:00
artemis-dto ARTEMIS-2169 allow config of JMX RMI registry port 2018-11-09 10:04:13 -06:00
artemis-features [maven-release-plugin] prepare for next development iteration 2018-05-16 11:03:26 -04:00
artemis-hawtio ARTEMIS-2137 web console retryMessage is broken 2018-12-16 20:38:07 -06:00
artemis-jdbc-store ARTEMIS-2202 Improve MSSQL support for JDBC storage 2018-12-13 13:54:13 -06:00
artemis-jms-client ARTEMIS-2139 Fix setJMSReplyTo for 1.x clients with enable1xPrefixes 2018-12-14 15:20:34 -06:00
artemis-jms-client-all ARTEMIS-1853 Adding Netty OpenSSL provider example 2018-05-23 15:47:10 -04:00
artemis-jms-client-osgi [maven-release-plugin] prepare for next development iteration 2018-05-16 11:03:26 -04:00
artemis-jms-server [ARTEMIS-2175] Duplicate messages when JMS bridge is stopped and restarted 2018-11-14 10:31:48 -05:00
artemis-journal ARTEMIS-2196 Avoid creating RandomAccessFile when FileChannel is needed 2018-12-14 15:10:30 -06:00
artemis-junit ARTEMIS-2205 Refactor AMQP Processing into Netty Thread 2019-01-10 16:39:56 +01:00
artemis-maven-plugin ARTEMIS-1931 Support Property replacement on the CLI 2018-06-18 15:46:35 -04:00
artemis-native ARTEMIS-2181 Add `static` storage class for an inline function internal to the compile unit 2018-12-13 10:47:18 -06:00
artemis-protocols ARTEMIS-2205 Refactor AMQP Processing into Netty Thread 2019-01-10 16:39:56 +01:00
artemis-ra ARTEMIS-2144 - tx begin failure in ra doesn't get cleaned up 2019-01-02 10:55:43 +00:00
artemis-rest NO-JIRA Add forgotten @Test annotation and make helper methods private 2018-12-13 10:53:34 -06:00
artemis-selector ARTEMIS-2017 Eliminate LRUCache from SelectorParser 2018-08-09 19:36:22 -04:00
artemis-server ARTEMIS-2205 Refactor AMQP Processing into Netty Thread 2019-01-10 16:39:56 +01:00
artemis-server-osgi ARTEMIS-1018 de-duplicate logging codes 2018-10-10 18:48:53 -04:00
artemis-service-extensions ARTEMIS-2121 reload logging config at runtime 2018-10-11 11:28:25 -04:00
artemis-tools ARTEMIS-2117 Add custom LVQ Key and Non Destructive Queue into Broker 2018-10-17 20:53:13 -04:00
artemis-web ARTEMIS-2126 web server can leak 2018-12-06 16:00:53 +01:00
artemis-website [maven-release-plugin] prepare for next development iteration 2018-05-16 11:03:26 -04:00
docs ARTEMIS-2162 Remove -XX:+AggressiveOpts to improve JDK 11 compatibility 2018-12-13 10:55:30 -06:00
etc ARTEMIS-1189 - Fix checkstyle violations post checkstyle upgrade 2017-05-30 13:40:00 -04:00
examples ARTEMIS-2162 Remove -XX:+AggressiveOpts to improve JDK 11 compatibility 2018-12-13 10:55:30 -06:00
integration/activemq-spring-integration ARTEMIS-1954 eliminate all possible usage of JMSServerManager 2018-07-12 14:24:44 -04:00
scripts NO-JIRA Script I use to rebuild snapshots under the distribution 2017-10-25 17:54:56 -04:00
tests ARTEMIS-2205 Refactor AMQP Processing into Netty Thread 2019-01-10 16:39:56 +01:00
.gitignore ARTEMIS-1723 Migrate AMQP C# examples to the common .NET version 2018-03-06 12:12:11 -06:00
.project More name changes to activemq 2014-11-19 16:01:54 -05:00
.travis.yml ARTEMIS-1684 remove native libs before ci build to avoid aio resource constraints failing tests in error 2018-10-08 12:31:40 +01:00
CMakeLists.txt ARTEMIS-163 First pass on the native AIO refactoring 2015-07-29 22:12:03 -04:00
LICENSE ARTEMIS-565 Replace json.org with javax.json 2016-07-25 21:44:57 -04:00
NOTICE NO-JIRA Update NOTICE files to have correct year range. 2018-05-17 15:43:31 -04:00
README.md Adds the Travis CI build status label on the README 2018-04-19 16:45:58 +02:00
RELEASING.md NO-JIRA update release instruction with git-release-report 2018-06-04 08:54:55 -04:00
artemis_doap.rdf Update vendor to ASF 2015-05-30 08:37:28 +02:00
mvnw ARTEMIS-613 Artemis build enhancements 2016-07-05 15:13:35 -04:00
mvnw.cmd ARTEMIS-613 Artemis build enhancements 2016-07-05 15:13:35 -04:00
pom.xml ARTEMIS-1938 Update Qpid JMS and proton-j to latest 2018-12-12 13:34:35 -05:00

README.md

ActiveMQ Artemis

This file describes some minimum 'stuff one needs to know' to get started coding in this project.

Source

For details about the modifying the code, building the project, running tests, IDE integration, etc. see our Hacking Guide.

Build Status

Build Status: Build Status

Building the ASYNC IO library

ActiveMQ Artemis provides two journal persistence types, NIO (which uses the Java NIO libraries), and ASYNCIO which interacts with the linux kernel libaio library. The ASYNCIO journal type should be used where possible as it is far superior in terms of performance.

ActiveMQ Artemis does not ship with the Artemis Native ASYNCIO library in the source distribution. These need to be built prior to running "mvn install", to ensure that the ASYNCIO journal type is available in the resulting build. Don't worry if you don't want to use ASYNCIO or your system does not support libaio, ActiveMQ Artemis will check at runtime to see if the required libraries and system dependencies are available, if not it will default to using NIO.

To build the ActiveMQ Artemis ASYNCIO native libraries, please follow the instructions in the artemis-native/README.

Documentation

Our documentation is always in sync with our releases at the Apache ActiveMQ Artemis website.

Or you can also look at the current master version on github.

Examples

To run an example firstly make sure you have run

$ mvn -Prelease install

If the project version has already been released then this is unnecessary.

Each individual example can be run using this command from its corresponding directory:

$ mvn verify

If you wish to run groups of examples then use this command from a parent directory (e.g. examples/features/standard):

$ mvn -Pexamples verify

Recreating the examples

If you are trying to copy the examples somewhere else and modifying them. Consider asking Maven to explicitly list all the dependencies:

# if trying to modify the 'topic' example:
cd examples/jms/topic && mvn dependency:list

Open Web Application Security Project (OWASP) Report

If you wish to generate the report for CCV dependencies, you may run it with the -Powasp profile

$ mvn -Powasp verify

The output will be under ./target/dependency-check-report.html for each sub-module.