Recently, four maintenance versions of EMQX open source version v4.3.16, open source version v4.4.5, enterprise version v4.3.11, and enterprise version v4.4.5 were officially released.

This release realizes the integration with the streaming database HStreamDB , providing one-stop data access and real-time processing and analysis. Added exclusive subscription function and dynamic QoS and reserved message setting support when the rule engine message is republished. At the same time, it supports setting the MQTT 5.0 PUBLISH Properties in the message publishing API to help users cope with more scenarios. In addition, several known bugs have been fixed.

Welcome to download and use: https://www.emqx.com/zh/try?product=enterprise

New Rules Engine Features

Integrated HStreamDB, one-stop data access, storage and analysis

Included versions 企业版 v4.3.11 企业版 v4.4.5

HStreamDB is a streaming database for IoT data storage and real-time processing. It uses standard SQL (and its streaming extensions) as the main interface language, takes real-time as its main feature, and integrates real-time data acquisition and capture systems, real-time data storage systems, stream computing engines, and downstream data and application systems. It simplifies the operation and maintenance management of data flow and the development of real-time applications.

The rule engine now supports persisting EMQX data to HStreamDB, enabling real-time processing, analysis and insight of these data. In the performance test, EMQX can stably support 80,000 connections, 80,000 QoS 0 per second, and persist messages with a payload of 4KB to HStreamDB under the 32-core 64GB configuration. Please refer to the documentation for integrated usage.

EMQX-HStreamDB XMeter 性能测试报告

Message republish action supports reserved message and dynamic QoS

Included versions 开源版 v4.3.16 开源版 v4.4.5 企业版 v4.3.11 企业版 v4.4.5

We introduce reserved messages and dynamic QoS support in the message republishing function to meet the needs of users in specific scenarios. The requirement for retaining messages comes from the EMQX Q&A community , which aims to store the latest client state in EMQX through retained messages for subsequent processing.

EMQX Dashboard

Added exclusive subscription feature

Included versions 开源版 v4.3.16 开源版 v4.4.5 企业版 v4.3.11 企业版 v4.4.5

Exclusive subscription only allows a single subscriber to subscribe to a topic. When using exclusive subscription, it is easy to realize the business of "some data can only be processed by one subscriber at the same time".

The use of exclusive subscriptions is very similar to shared subscriptions, using a specific topic prefix $exclusive indicates that this is an exclusive subscription. After a client subscribes successfully, new clients will not be able to subscribe to the same topic again.

Exclusive subscription is disabled by default and needs to be enabled in this configuration item:

 mqtt.exclusive_subscription = true

Example of an exclusive subscription in effect:

 // 成功
clientA.subscribe('$exclusive/t/1')

// 失败,该主题已有订阅者
clientB.subscribe('$exclusive/t/1')

// 成功,不带前缀的普通主题仍然可以成功订阅
clientC.subscribe('t/1')

// 需要携带前缀以取消订阅
clientA.unsubscribe('$exclusive/t/1')
// 成功
clientB.subscribe('$exclusive/t/1')

The message publishing API supports setting MQTT 5.0 PUBLISH Properties

Included version 开源版 v4.4.5 企业版 v4.4.5

MQTT 5.0 supports setting additional properties such as message expiration interval , topic alias , and user properties when publishing messages. In the new version, users can use this feature in the message publishing API to meet more business needs.

The following is an example of a message publish with publish properties:

 curl -i --basic -u admin:public -X POST "http://localhost:8081/api/v4/mqtt/publish" -d \
'{
  "topic":"t/1",
  "payload":"Hello World",
  "qos":1,
  "retain":false,
  "clientid":"emqx_c",
  "properties": {
    "user_properties": { "id": 10010, "name": "emqx", "foo": "bar"},
    "content_type": "text/plain",
    "message_expiry_interval": 3600
  }
}'

More function optimization

  • Support one-click update of cluster license through CLI
  • Dashboard and Admin API's HTTPS listener can use password-protected private key files, providing the key_password configuration item
  • Support for using placeholders in topic rewrite rules %u and %c
  • Optimize the UI when creating rule engine resources, such as folding some uncommon options, etc.
  • Opened four TCP-related configuration items: KeepAlive, TCP_NODELAY, SO_RCVBUF and SO_SNDBUF for the underlying gRPC connection of ExHook

BUG fix

For details of BUG fixes in each version, please check:

Copyright statement: This article is original by EMQ, please indicate the source when reprinting.

Original link: https://www.emqx.com/zh/blog/emqx-update-integrated-streaming-database


EMQX
336 声望436 粉丝

EMQ(杭州映云科技有限公司)是一家开源物联网数据基础设施软件供应商,交付全球领先的开源 MQTT 消息服务器和流处理数据库,提供基于云原生+边缘计算技术的一站式解决方案,实现企业云边端实时数据连接、移动、...