The latest and greatest news from the Apollo team

Apollo Blog

Apollo 1.3

Posted by Hiram Chirino on Tuesday, May 8, 2012

The Apache ActiveMQ Project is pleased to announce the availability of Apollo 1.3. ActiveMQ Apollo is a faster, more reliable, easier to maintain messaging broker built from the foundations of the original ActiveMQ.

This release fixes several bugs, improves performance and introduces a few new features:

  • [APLO-160] - Reduce memory overhead of many connections.
  • [APLO-188] - Add “Access-Control-Allow-Methods” and “Access-Control-Allow-Headers” to CORS requests
  • [APLO-192] - “java.lang.AssertionError: Dispatch queue 'virtual-host' was not executing” occurs when queue or dsub is deleted via web admin
  • [APLO-198] - Apollo sometimes does not send all the messages in a queue
  • [APLO-193] - Support filtering outgoing messages
  • [APLO-196] - Allow protocol filters to drop a messages

For further information see:

Feedback is always welcomed!

Apollo 1.4

Posted by Hiram Chirino on Tuesday, May 8, 2012

The Apache ActiveMQ Project is pleased to announce the availability of Apollo 1.4. ActiveMQ Apollo is a faster, more reliable, easier to maintain messaging broker built from the foundations of the original ActiveMQ.

This release fixes several bugs especially around Openwire and WebSockets and introduces a few improvements like:

[APLO-206] - Load balance of job queues when 'credit:1,0' is used on the consumer. [APLO-212] - Allow topic deletion via the REST API

Feedback is always welcomed!

Apollo 1.2

Posted by Hiram Chirino on Thursday, April 19, 2012

The Apache ActiveMQ Project is pleased to announce the availability of Apollo 1.2. ActiveMQ Apollo is a faster, more reliable, easier to maintain messaging broker built from the foundations of the original ActiveMQ.

This release fixes several bugs, improves performance and introduces a few new features like:

  • Support Dead Letter Queues
  • Support dropping messages on queues that are full.
  • Allow customizing the settings of the per subscription queues created when slowconsumerpolicy="queue” on a topic
  • Support allowing cross origin resource sharing (CORS) of web admin APIs and websocket APIs.
  • Experimental support for lossy UDP based messaging
  • Experimental support for Swagger based REST API documentation acceisble at http://localhost:61680/api/index.html
  • Include examples of how to use MQTT on Apollo
  • Added a total disk space used to the reporting metrics
  • You can now select the private key to be used for SSL in the keystore
  • Sender IP address is now passed as a JAAS principal
  • You can now force client side certs on SSL connections

For further information see:

Feedback is always welcomed!

Apollo 1.1

Posted by Hiram Chirino on Monday, March 5, 2012

The Apache ActiveMQ Project is pleased to announce the availability of Apollo 1.1. ActiveMQ Apollo is a faster, more reliable, easier to maintain messaging broker built from the foundations of the original ActiveMQ.

This release fixes several bugs, improves performance and introduces a few new features like:

  • [APLO-145] - Support WebSockets
  • [APLO-152] - Support an option to have topics retain the last message sent to it

This version introduces a change to the LevelDB store's file format so make sure you follow the Migration Guide if your upgradig from 1.0.

For further information see:

Feedback is always welcomed!

Apollo 1.0

Posted by Hiram Chirino on Thursday, February 2, 2012

The Apache ActiveMQ Project is pleased to announce the availability of Apollo 1.0. ActiveMQ Apollo is a faster, more reliable, easier to maintain messaging broker built from the foundations of the original ActiveMQ. Apollo is the fastest and most robust STOMP server.

Apollo Features:

Noteworthy changes since the last beta include:

  • [APLO-120] - Add a —with-ssl option to the apollo create command to control if an SSL enabled configuration is created.
  • [APLO-134] - LevelDB store should use a file lock so a broker instance get exclusive access to the store data.
  • [APLO-135] - Add example to the distro that shows how you can boot up an embedded broker in a Java app.
  • [APLO-109] - Apollo should run with assertions enabled by default unless APOLLO_ASSERTIONS=false is set in the env.
  • [APLO-110] - Provide more information in case of authentication failure
  • [APLO-112] - Support for TLS 1.2
  • [APLO-118] - All configuration attributes which configure memory/disk usage sizes should support values like “1k” “2G” etc.
  • [APLO-124] - call the LoginModule.logout method
  • [APLO-125] - Client authentication error message
  • [APLO-128] - Simplify the leveldb-store's log record format so that every record has a checksum which can be used to quickly validate all read data in case your paranoid about data corruption in your FS
  • [APLO-130] - Allow acquired queue entries to get swapped. This is especially handy if the entry was already persisted anyways.
  • [APLO-131] - Stores should track “storage schema version number” to detect when the store is incompatible with a new broker version.
  • [APLO-136] - Support dots in a dsub name
  • [APLO-141] - The connection screen displays 'transport: tcp' even though the connection came in over the tls port.
  • [APLO-139] - Simplify the JSON encoding of the @class field

Further information:

Feedback is always welcome!

Apollo 1.0 Beta 6 Released

Posted by Hiram Chirino on Wednesday, December 8, 2010

The Apache ActiveMQ Project is pleased to announce the availability of Apollo 1.0 Beta 6. ActiveMQ Apollo is a faster, more reliable, easier to maintain messaging broker built from the foundations of the original ActiveMQ. It is focused on being the fastest most reliable STOMP 1.1 and 1.0 server available.

Apollo Features:

Noteworthy changes since the last beta include:

  • APLO-92 - Support temporary destinations which can only be consumed by the connection which creates them
  • APLO-93 - Support initial read/write interval in heartbeat monitor
  • APLO-99 - Support a browser-end:false option on a SUBSCRIBE frame to allow a Queue browser to wait for new messages instead of closing the subscription
  • APLO-100 - Support a include-seq and from-seq option on the SUBSCRIBE frame to finely control from where in a queue a subscription starts from.
  • APLO-101 - Support Kafka style durable pub/sub
  • APLO-103 - Add a leveldb based message store

Migration Notes:

The leveldb based message store is now used by default instead of the jdbm2 store.

Further information:

Feedback is always welcome!

Apollo 1.0 Beta 4 Released

Posted by Hiram Chirino on Tuesday, June 29, 2010

The Apache ActiveMQ Project is pleased to announce the availability of Apollo 1.0 Beta 4. ActiveMQ Apollo is a faster, more reliable, easier to maintain messaging broker built from the foundations of the original ActiveMQ. It is focused on being the fastest most reliable STOMP 1.1 and 1.0 server available.

Apollo Features:

Noteworthy changes since the last beta include:

  • APLO-17 - Support message expiration
  • APLO-39 - Apply configuration updates to a broker without needing a restart
  • APLO-40 - Web interface should support editing all the apollo configuration files (log4j, jaas, etc.)
  • APLO-41 - Expose JVM Status/Metrics via REST API
  • APLO-43 - Create an XSD to validate the apollo.xml configuration file.
  • APLO-45 - Support auto deleting idle queues and topics
  • APLO-47 - Add connectioncounter, consumercounter, and producer_counter metrics to the management interface
  • APLO-50 - Support pre-creating durable subscriptions via the broker config file
  • APLO-55 - Add an option to enable strict validation of the configuration XML
  • APLO-57 - Track desired service state so you can stop a service which is still starting
  • APLO-60 - Support regular expressions in destination wildcards.
  • APLO-42 - File based JAAS login modules should cache file contents until changed.
  • APLO-44 - Eagerly create destinations which are explicitly defined in the server configuration file.
  • APLO-46 - Include current/total page info when the REST interface returns a paged result set

Further information:

Feedback is always welcome!

Apollo 1.0 Beta 5 Released

Posted by Hiram Chirino on Tuesday, June 29, 2010

The Apache ActiveMQ Project is pleased to announce the availability of Apollo 1.0 Beta 5. ActiveMQ Apollo is a faster, more reliable, easier to maintain messaging broker built from the foundations of the original ActiveMQ. It is focused on being the fastest most reliable STOMP 1.1 and 1.0 server available.

Apollo Features:

Noteworthy changes since the last beta include:

  • APLO-67 - Support an auto-delete:true header on the STOMP subscribe frame to auto delete queues when the subscription ends
  • APLO-70 - Add per-destination queue quota
  • APLO-34 - Allow a STOMP subscription to control message flow using a credit window
  • APLO-68 - Add support for TCP-level keepalive
  • APLO-74 - Support setting the timestamp header on received messages
  • APLO-75 - Support setting the redelivered header on redelivered messages
  • APLO-56 - Change to a terser configuration scheme for ACL definitions
  • APLO-81 - Include message counters on the producer/consumer links on the destination stats in the REST API.
  • APLO-80 - Separate message statistics for durable subs from queues.
  • APLO-82 - Add a new /dest-metrics REST route which collects the metrics for queues, topics and dsubs.
  • APLO-83 - Apollo REST API should support cookie/session based authentication
  • APLO-71 - Apollo plugins should be easy to configure
  • APLO-77 - Provide connection aggregation in the REST API
  • APLO-78 - Provide message statistics (for topics) in the REST API

Migration Notes:

The way access control is configured substantially changed sine the Beta 4 release. It's recommend you generate a new apollo configuration if upgrade to this release.

Further information:

Feedback is always welcome!

Apollo 1.0 Beta 3 Released

Posted by Hiram Chirino on Tuesday, June 1, 2010

The Apache ActiveMQ Project is pleased to announce the availability of Apollo 1.0 Beta 3. ActiveMQ Apollo is a faster, more reliable, easier to maintain messaging broker built from the foundations of the original ActiveMQ. It is focused on being the fastest most reliable STOMP 1.1 and 1.0 server available.

Apollo Features:

Noteworthy changes since the last beta include:

  • APLO-6 - Alternative topic separators should be supported in Apollo, as in ActiveMQ
  • APLO-11 - Support HTTPS access to the REST management API
  • APLO-12 - Support finer grained security in the REST based admin API
  • APLO-21 - Support a protocol interceptor plugins to allow policy enforcement
  • APLO-22 - Support generic service plugins to on a broker so that admins can start/stop additional opaque services along /w the broker.
  • APLO-26 - Support directly addressing durable subscription queues
  • APLO-27 - Support finer grained selection of record and fields in the REST interface
  • APLO-29 - Add a new broker security roll to control access to viewing the broker configuration.
  • APLO-32 - Support Connector start/stop actions in the management interface
  • APLO-33 - Support deleting queues from the management interface.
  • APLO-35- - Support installing as a background windows service
  • APLO-37- Update BDB store to use a single BTree for all queue entries and use variable encoding for the keys

Migration Notes:

It is recommended to you generate a new broker instance for this release. The 1.0 beta3 release uses a slightly different default configuration (to create a https port for administration). If your were using the BDB store, this new release uses a totally different storage layout so you should export the data from the previous versions, wipe the data directory and then import it into the broker on the new release.

Further information:

Feedback is always welcome!

Apollo 1.0 Beta 2 Released

Posted by Hiram Chirino on Monday, May 3, 2010

The Apache ActiveMQ Project is pleased to announce the availability of Apollo 1.0 Beta 2. ActiveMQ Apollo is a faster, more reliable, easier to maintain messaging broker built from the foundations of the original ActiveMQ. It is focused on being the fastest most reliable STOMP 1.1 and 1.0 server available.

This Beta release features:

Further information:

Feedback is always welcome!

Change since the last beta include:

  • Enable the jvmassert scala compiler plugin so that asserts are disabled by default at runtime unless enabled with the JVM -ea flag.
  • Reduce verbosity of the internal debug message.
  • Used the latest release of the stomp JMS client.
  • Don't assume all connectors will be AcceptingConnectors.
  • If the user sets the JVM_FLAGS or JMX_OPTS then, don't use our defaults.
  • Source the etc/apollo.profile if it exists.
  • Protect against NPE.
  • Configure the receive buffer size on the server socket so that it get properly set on the sockets that get accepted.
  • Doco: Adding more config details about transport protocols
  • Doco: Better looking downloads page.
  • Doco: Have the links look different than the headers.
  • Rename the multi protocol to any since that reads better from the point of view of config: protocol="any"
  • Simpler tcp transport option setup.
  • Make the stomp max allowed headers sizes and friends configurable.
  • Only trim headers in STOMP 1.0
  • Making more socket options configurable on the tcp transport.
  • Delay shutting down on disconnect to allow the receipt to be sent back to the client.
  • Implemented an apollo-broker-service script which can be used to start/stop and manage a broker that is run in the background.
  • Fixes AMQ-3295 : better logging messages.
  • Simplify setting up the session refiller.
  • display the base dir.
  • Simpler getting started guide.
  • Report the apollo install location when starting up the broker.
  • Better dispatch execution assertion checking to catch usage errors.
  • Add a linked assertion check to provide a friendlier usage error message.
  • Fixes /AMQ-3267 - Make it able run Apollo without setting env variables
  • Fixes AMQ-3265 : Added a Waiting for messages... console message to all the listener examples.
  • Fixes AMQ-3264 : Add an bin/apollo --help
  • Add a shutdown hook which stops the broker.
  • Adding a toString method to queues of easier debugging.
  • Display more DBD store stats: # of pending stores.

Apollo 1.0 Beta 1 Released

Posted by Hiram Chirino on Tuesday, April 6, 2010

The Apache ActiveMQ Project is pleased to announce the availability of Apollo 1.0 Beta 1. ActiveMQ Apollo is a faster, more reliable, easier to maintain messaging broker built from the foundations of the original ActiveMQ. It is focused on being the fastest most reliable STOMP 1.1 server available.

This Beta release features:

Further information:

Feedback is always welcome!