Skip to main content

Eclipse Amlen v1.0: A Milestone in the Growth of MQTT

Over ten years ago, the Eclipse Foundation launched the Eclipse IoT working group. MQTT was one of the pillars of that launch. The first three projects were Eclipse Paho, a collection of MQTT clients, Eclipse Mosquitto, an MQTT broker, and Eclipse Kura, a Java/OSGi solution for IoT gateways that supports the protocol. To say that MQTT is in our genes would be an understatement. Since then, usage of MQTT has grown significantly. Year after year, the simple yet powerful publish/subscribe protocol is the most widely used IoT-specific protocol in our annual developer surveys. For example, in the 2021 edition, 44% of respondents stated they are using it. We like to think we are at least partly responsible for that.

By the way, our 2022 survey is currently underway; you have until June 15, 2022, to participate. Click here to share your insights after finishing this post, of course.

IBM has been a key player in our MQTT ecosystem for a long time. In 2021, the company brought its commitment to the next level by starting the Eclipse Amlen project at the Eclipse Foundation. The initial code contribution was a bit unusual. Of course, its size was impressive since it included over two million lines of source code, test code, and documentation. But what set this contribution apart was the codebase’s maturity. The roots of Amlen go back to IBM MessageSight, a hardware appliance launched back in 2012. The code is now at the core of another commercial product, the IBM Watson IoT Platform - Message Gateway.

The feature set of Amlen is quite extensive. Of course, the broker offers full support for both MQTT v5 and v3.1.1. Other key features include:

  • An intuitive web-based graphical user interface to configure and monitor broker instances
  • Support for high availability with active/passive server pairs. This streamlines maintenance and ensures continued service in case of outages.
  • Support for server clustering. This enables the broker to accept more connections than would be possible on a standalone server and makes it possible to scale message throughput.
  • Policy-based security to support complex real-world IoT deployments.

The Amlen team released version 1.0 of the project on May 24, 2022. This important milestone means that the transition of the codebase to an open-source project is complete and that it is ready for production use. Behind the scenes, the team worked tirelessly to remove proprietary dependencies and make the code ready for consumption and contribution by the wider open-source community. Congratulations to Jon Levell and the other committers on the project!

Amlen reaching v1.0 is important not only for the project itself but also for the Eclipse IoT community and the MQTT ecosystem. With Paho, Mosquitto, and now Amlen, our MQTT toolkit can now be used to power any IoT solution, from embedded constrained devices to massively scalable Cloud services and everything in between. Given this, I can safely say that MQTT will play an even greater role in the next ten years of Eclipse IoT.

In the past, IBM WIoTP Message Gateway has been used in manufacturing and mobile banking. It even provided live scores from the Wimbledon tennis tournament to Web and mobile audiences. Given its resilience and scalability, I expect Amlen will quickly be seen in similar use cases and many others.

If you wish to take Amlen out for a spin, you can download it here. The full documentation is available online, as is a Getting Started Guide. If you need assistance, Jon and the team can be found in the #amlen channel on the Eclipse IoT Slack workspace, and they will be happy to answer your questions.

Comments

Popular posts from this blog

Eclipse IDE for Embedded Developers Now Runs on the Raspberry Pi!

The Eclipse IDE is the project that started it all for the Eclipse Foundation . From the beginning, Eclipse IDE was meant to run on multiple platforms; it now supports Linux, Mac OS and Microsoft Windows. Since it is written in Java, it also supports multiple processor architectures. However, support for 32-bit architectures has been dropped in version 2018-12. This meant recent versions of the IDE would not run on the Raspberry Pi anymore. The introduction of the Raspberry Pi 4 in June 2019 gave hope to Eclipse on Pi fans. With its 64-bit quad core ARM Cortex-A72, the Pi 4 was a good hardware platform to work with. It became even more attractive in May 2020, with the introduction of the 8Gb variant. The Eclipse community took notice of those developments. Version 2020-09 of Eclipse IDE now ships with experimental support for 64-bit ARM (aarch64) on Linux.  Those developments mean embedded and IoT developers can now work on the Raspberry Pi 4 by installing the plugins provided by the 

Sparkplug: From Specification to Standard

This week, the Eclipse Foundation announced that the Sparkpug® 3.0 specification has been published as an International Standard. That sounds impressive. But what does it mean, exactly? And how will this impact the evolution of Sparkplug? To answer this question, let’s take a step back and consider what standards are. The technology industry loves standards. For example, USB is a set of standards managed by the USB Implementers Forum, Inc. (USB-IF), a non-profit corporation founded by the companies that developed the USB specification. The Eclipse Foundation describes Jakarta EE as a standard: a set of  specifications for enterprise Java application development. In the IoT and Industrial Automation world, OASIS Open also presents the MQTT protocol as a standard. However, standards play a much more pervasive role in society. There are standards for building homes and others that define how cars should work. Standards permeate our lives. To understand the significance of this week