Mainflux v0.6 Released

Mainflux releases version 0.6 with several important features and feature improvements

Drasko DRASKOVIC
Mainflux IoT Platform
2 min readNov 2, 2018

--

We at Mainflux are building one of the world’s most sophisticated open-source IoT platforms. Our vision is to provide modern, highly scalable and effective IIoT system for the cloud and the network edge.

After finishing several important features, Mainflux team released new version of our IoT platform — version 0.6. Release can be found on the GitHub: https://github.com/mainflux/mainflux/releases/tag/0.6.0

All the Docker images have been updated to the latest release and can be fetched from project’s official DockerHub page.

Most notable features are:

  • Go SDK
  • Log level configuration
  • Improved performance with Redis cache

SDK

From this release Mainflux gets an official SDK. It has been covered by the PR #357. Code is in the dedicated directory in monorepo and README file explains the provided functions.

Currently functions are implemented as wrappers around HTTP REST API, but in the future we plan to add gRPC support.

With SDK it becomes extremely simple to write IoT apps on the top of the Mainflux.

It becomes also easy to write Mainflux administrative scripts and programs — for example Mainflux CLI is implemented using new SDK.

Log Levels

PR #402 from Michael Finley (many thanks Michael!) intorduces confurable log levels. This is very useful for debugging purposes.

Each microservice documents how this log level can be configured (for example HTTP adapter log level can be configured with MF_HTTP_ADAPTER_LOG_LEVEL, as can be seen here).

Default log level is set to error — something is logged only in the case of error and to avid bloating the logs.

Performance Improvement With Redis Cache

Even with deployment in Kubernetes and with scaling out protocol adapter and things and users microservices, we have noticed performance issues due to various reasons: Linux and PostgreSQL config, but mostly due to the lag needed to verify each access with authorization service.

In order to boost the performance, PR #383 introduces Redis cache for authorization service, and access control checks are now faster for the order of magnitude as they are checked with fast memory access instead reading from the disk.

Besides these important features, this release brings a few minor bug-fixes and improvements.

We hope that the community will benefit a lot form new Mainflux release and we expect to see a lot of new verical solution built on the top of Mainflux in the coming period.

In the meantime team continues the hard work on v0.7 which will bring LoRa support, provide experimental CoAP support (that we temporarily removed), improve Kubernetes deployment and simplify MQTT clustering. It will also improve test coverage and fix few minor bugs.

Lot of interesting stuff on Mainflux roadmap. Stay tuned!

To learn more about Mainflux and how we’re building the world’s most sophisticated open-source Industrial IoT cloud, visit our website and follow us on Twitter!

--

--