HiveMQ 2.0 released
Written by The HiveMQ Team
Category: HiveMQ Release
Published: June 2, 2014
We’re thrilled to announce that HiveMQ 2.0 is now available as a free upgrade for every HiveMQ user. It has tons of new features, bugfixes and improvements. While many of the improvements are under the hood, there are some new features which definitely stand out:
While the MQTT 3.1.1 specification is now finalized yet, HiveMQ already supports all new features and improvements from the latest MQTT 3.1.1 committee draft. Also, HiveMQ participated successfully in the Eclipse MQTT Interoperability testing day and passed all interoperability tests successfully.
With HiveMQ, you can use both protocol versions, MQTT 3.1.1 and MQTT 3.1, simultaneously with different clients. So MQTT 3.1.1 and MQTT 3.1 clients can exchange messages over the same HiveMQ instance. Of course every client get the protocol semantics of the MQTT version they are using. And the best thing is, this is supported out-of-the-box and no special configuration is needed. Just upgrade HiveMQ and start using MQTT 3.1.1 today! Oh and did we mention that you can of course use MQTT 3.1.1 with the native MQTT-over-websockets functionality of HiveMQ?
Another big feature of HiveMQ 2.0 is the support of MQTT broker bridges. With bridges, you can chain MQTT brokers together. HiveMQ supports the unofficial bridge protocol which is also used by other MQTT brokers. That means, HiveMQ is also fully interoperable with other MQTT broker implementations if they support bridging (like mosquitto).
All bridge types (AUTOMATIC, LAZY, ONCE and MANUAL) you may know from other brokers are fully supported and you can even fully control your bridges with your own HiveMQ plugins. Always wanted to configure bridges in your local database instead of a config file? No problem!
Learn more about the bridge functionality in the HiveMQ documentation.
New Callbacks and Plugin Services
HiveMQ 2.0 brings some major features and improvements to the plugin system. In particular these new Callbacks and services were added:
HiveMQ now supports scheduled callbacks, which means you can now schedule your business logic executions. HiveMQ understands cron-like expressions for scheduling, so this is perfect for e.g. maintenance tasks. These cron expressions can even change at runtime to give you maximum flexibility.
$SYS Topic Service
With the $SYS Topic Service introduced in this release, you can add and remove $SYS topics at runtime. Don’t like that a specific $SYS topic is published, but you also don’t want to disable $SYS topics at all? Just write your own plugin and remove this specific topic at runtime! You can even add your own $SYS topic for statistics you want your MQTT clients to know but are not standardized.
Bridge Manager Service
With the new Bridge Manager Service it’s possible to add, remove, start and stop bridges at runtime. If you don’t like the standard bridges.xml file for configuring your bridges, you can implement your own configuration format or even use your database or add a webservice for bridge management.
- HiveMQ 2.0 uses a different data folder structure and has a different metadata format compared to 1.x. Please make sure to delete your data folder after upgrading.
- Sneak Peek: We’re going to introduce an additional licensing model soon: HiveMQ pay-as-you-go. If you’d be interested in that, make sure to take a look here.
- This is a free upgrade for every HiveMQ user.
These are just a few highlights of the release, please see the changelog for a list of improvements an changes and make sure to read the documentation and plugin documentation.
Let us know what you think of this release in the comments or the support forum.
Have a great day, The HiveMQ Team