Apache ActiveMQ

From Wikipedia, the free encyclopedia
Jump to navigation Jump to search
Apache ActiveMQ
Apache ActiveMQ Project Logo
Developer(s)Apache Software Foundation
Stable release
5.16.3 / August 17, 2021; 2 months ago (2021-08-17)[1]
RepositoryActiveMQ Repository
Written inJava
Operating systemCross-platform
TypeJava Message Service, Message-oriented middleware, Enterprise Messaging System, SOA
LicenseApache License 2.0
Websiteactivemq.apache.org

Apache ActiveMQ is an open source message broker written in Java together with a full Java Message Service (JMS) client. It provides "Enterprise Features" which in this case means fostering the communication from more than one client or server. Supported clients include Java via JMS 1.1 as well as several other "cross language" clients.[2] The communication is managed with features such as computer clustering and ability to use any database as a JMS persistence provider besides virtual memory, cache, and journal persistency.[3]

There's another broker under the ActiveMQ umbrella code-named Artemis. It is based on the HornetQ code-base which was donated[4] from the JBoss community to the Apache ActiveMQ community in 2015. Artemis is the "next generation" broker from ActiveMQ and will ultimately become the next major version of ActiveMQ.[5]

History[edit]

The ActiveMQ project was originally created by its founders from LogicBlaze[6] in 2004, as an open source message broker, hosted by CodeHaus. The code and ActiveMQ trademark were donated to the Apache Software Foundation in 2007, where the founders continued to develop the codebase with the extended Apache community.

Technical features[edit]

ActiveMQ employs several modes for high availability, including both file-system and database row-level locking mechanisms, sharing of the persistence store via a shared filesystem, or true replication using Apache ZooKeeper. A horizontal scaling mechanism called a Network of Brokers,[7] is also supported out of the box. ActiveMQ supports a relatively large number of transport protocols, including OpenWire, STOMP, MQTT, AMQP, REST, and WebSockets.[8]

Usage[edit]

ActiveMQ is used in enterprise service bus implementations such as Apache ServiceMix[9] and Mule.[10] Other projects using ActiveMQ include Apache Camel[11] and Apache CXF[12] in SOA infrastructure projects.[13]

Benchmark[edit]

Coinciding with the release of Apache ActiveMQ 5.3, the world's first results for the SPECjms2007 industry standard benchmark were announced. Four results were submitted to the SPEC and accepted for publication. The results cover different topologies to analyze the scalability of Apache ActiveMQ in two dimensions.[14][15]

Commercial support[edit]

Apache offers limited ActiveMQ support on a volunteer basis. Commercial companies specializing in ActiveMQ are recommended for users needing more extensive support.[16]

See also[edit]

References[edit]

  1. ^ "ActiveMQ 5.16.3 Release". Apache ActiveMQ.
  2. ^ "Cross Language Clients". Apache ActiveMQ.
  3. ^ "Features". Apache ActiveMQ.
  4. ^ "Donation to ActiveMQ". HornetQ.
  5. ^ "ActiveMQ Artemis Roadmap". Apache ActiveMQ.
  6. ^ "IONA acquires LogicBlaze, supporters of ActiveMQ and ServiceMix ESB". InfoQ.
  7. ^ "Network of Brokers". Apache ActiveMQ.
  8. ^ "Protocols". Apache ActiveMQ.
  9. ^ "Apache ServiceMix". Apache ServiceMix.
  10. ^ "ActiveMQ Integration". Mulesoft.
  11. ^ "ActiveMQ". Apache Camel.
  12. ^ "Axis and CXF Support". Apache ActiveMQ.
  13. ^ "Projects using ActiveMQ". Apache ActiveMQ.
  14. ^ "Worlds first SPECjms2007 Results using ActiveMQ 5.3". TU Darmstadt. Archived from the original on 2013-03-18. Retrieved 2013-01-16.
  15. ^ "SPECjms2007 Results". Standard Performance Evaluation Corporation.
  16. ^ "Support". Apache ActiveMQ.

Bibliography[edit]

External links[edit]