EMQX v4.4.5 release: Added support for exclusive subscription and MQTT 5.0 release properties

Recently, four maintenance versions of EMQX open source v4.3.16, open source v4.4.5, enterprise v4.3.11 and enterprise 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 version企业版 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 Performance Test Report

Message republish action supports reserved message and dynamic QoS

Included version开源版 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 status in EMQX through retained messages for subsequent processing.

Added exclusive subscription feature

Included version开源版 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, you can easily 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. The use of a specific topic prefix 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

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:

// success 
clientA.subscribe('$exclusive/t/1') 
​//
 failure, the topic already has subscribers 
clientB.subscribe('$exclusive/t/1') 
​//
 success, normal without prefix Topic can still successfully subscribe 
clientC.subscribe('t/1') 
​//
 need to carry prefix to unsubscribe 
clientA.unsubscribe('$exclusive/t/1') 
// successful 
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 listeners can use password protected private key files, providing configuration itemskey_password

  • Support for placeholders and%u%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:

Supongo que te gusta

Origin www.oschina.net/news/203666/emqx-4-4-5-released
Recomendado
Clasificación