EMQX Enterprise 4.4.124.4.13 发布:集群负载重平衡、TDengine 3.0 适配以及子表批量插入

news2024/9/21 12:43:32

我们很高兴地告诉大家,EMQX Enterprise 4.4.12 以及 4.4.13 版本正式发布!

在本次发布中,我们带来了集群负载重平衡与节点疏散功能为运维人员提供更灵活的集群管理方式,适配了 TDengine 3.0 版本并新增分表批量插入功能,以提供更高的数据集成吞吐。除此之外,我们还修复了多项缺陷。

集群负载重平衡与节点疏散

MQTT 作为有状态的长连接接入协议,在生产环境下 EMQX 集群运维不可避免的会遇到一些困难。

一方面,在跨版本升级、垂直或水平扩展时要求关闭 EMQX 节点,这会导致节点上所有连接几乎同时断开并重连,增加了集群过载的风险,与此同时非持久会话也将在节点关闭时丢失。另一方面,长连接一旦建立就不会轻易断开,新加入集群或重新启动的节点会长时间处于负载不足的状态。

为解决以上困难,集群负载重平衡与节点疏散应运而生。

节点疏散功能允许用户在关闭节点之前强制将连接和会话迁移到其他节点,以避免节点关闭带来的会话数据丢失。

启用节点疏散后,当前节点将停止接受 MQTT 新连接,并将所有连接及会话转移到指定节点,在此过程中客户端通过重连或 MQTT 5.0 Server redirection 机制,经历短暂的断开后会迅速连接到新节点。

为确保短时间内的大规模重连导致集群负载过高,EMQX 允许设置疏散速度参数,在可控的范围内平稳地完成这一操作。

集群负载重平衡基于节点疏散,通过手动的方式,控制将部分连接从负载较高的节点疏散到负载较低的节点,从而达成整个集群的负载平衡。

1

集群负载重平衡与节点疏散能够确保所有节点以良好的负载工作,并大大降低 EMQX 维护工作对在线客户端以及客户业务的影响,详细的使用方式请参阅 EMQX 文档,目前这一功能已经被整合至 EMQX Operator 中以为 EMQX 的 K8s 自动化部署带来更好的使用体验。

TDengine 3.0 适配以及子表批量插入

TDengine 3.0 带来了大量的架构重构和功能新增,提供了更好的性能和更多灵活易用的功能。在 TDengine 3.0 中,EMQX 依赖的数据写入接口也做了相应的调整导致无法正确写入数据。

本次发布我们对这一变更进行了无缝适配,现有的规则与资源无需修改即可支持 TDengine 3.0 版本。

在版本适配的同时,我们还加入了 TDengine 子表 批量插入能力,通过批量机制提供更高的吞吐性能,性能测试数据表明,预先创建好子表的情况下,单个 EMQX 节点可以支持每秒 10 万 QoS 1、Payload 100B 的消息写入 TDengine。

BUG 修复

以下是主要 BUG 修复,完整 BUG 修复列表请参考 EMQX 企业版 4.4.12 更新日志、EMQX 企业版 4.4.13 更新日志。

  • 修复 GCP PubSub 集成测试连接时可能的内存泄露以及 JWT 令牌二次刷新问题。
  • 为修复 Kafka 集成的连接问题,为 Kafka 资源 SSL 连接配置增加 SNI 字段,能够方便的连接到诸如 Confluent Cloud 等启用了 TLS 且集群部署的 Kafka 资源中。
  • 修复备份配置下载时错误,以及导入时不会在集群所有节点上生效的问题。
  • 修复 RocketMQ 认证失败问题,该错误导致 EMQX 无法连接到由阿里云提供的 RocketMQ 服务。
  • 为 Kafka 与 Pulsar 动作参数添加检查,确保 Segment Bytes 不会超过 Max Bytes。
  • 修复 Dashboard 用户验证问题,通过 Dashboard 创建用户时,要求密码格式为字母、数字、中划线与下划线,必须以字母或数字开头(^[A-Za-z0-9]+[A-Za-z0-9-_]*$)。
  • 持久会话的 MQTT 客户端重新连接 EMQX 之后,未确认的 QoS1/QoS2 消息不再周期性重发,该行为符合协议规范。 在此之前由 znone.<zone-name>.retry_interval 配置指定该消息的重发间隔(默认为 30s),但当持久会话的 MQTT 客户端重新连接 EMQX 之后,EMQX 只会将队列中缓存的未被确认的消息重发一次而不是按配置的时间间隔重试。
  • 修复持久会话的 MQTT 客户端断开连接之后,已经过期的 awaiting_rel 队列不会清除问题。 在这个改动之前,在客户端重连并且发布 QoS2 消息的时候,如果 awaiting_rel 队列已满,此客户端会被服务器以 RC_RECEIVE_MAXIMUM_EXCEEDED(0x93) 错误码断开连接,即使这时候 awaiting_rel 队列里面的报文 ID 已经过期了。

版权声明: 本文为 EMQ 原创,转载请注明出处。

原文链接:https://www.emqx.com/zh/blog/emqx-enterprise-v-4-4-13-released

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/141797.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

ECMAScript 2022 中的新特性!

新钛云服已累计为您分享718篇技术干货本文盘点ECMAScript 2022 中的新特性&#xff0c;包括顶级等待、RegExp 匹配索引、新的公共和私有类字段等。一、公共和私有实例字段最新的 ES13 规范允许我们将成员字段内联定义为类主体的一部分&#xff0c;我们可以使用#来表示私有字段。…

Python打包(问题记录,带解决)

引言 文章用于测试在Python3.8的版本&#xff0c;打包Obspy地震包&#xff0c;最后集成到PyQt5上。 部署或冻结应用程序是 Python 项目的重要组成部分&#xff0c; 这意味着捆绑所有必需的资源&#xff0c;以便应用程序找到它需要的一切 能够在客户端计算机上运行。 但是&…

Ethereum 基础(一)

以太坊&#xff08;Ethereum&#xff09;是社区运行的技术&#xff0c;为加密货币以太币(ETH)和数千个去中心化应用程序提供动力。 ethereum.org是您进入以太坊世界的门户。这项技术是新的、不断发展的——有个向导会有帮助。如果你想深入研究&#xff0c;我们建议你这样做。 …

Linux内核定时器

1.概念 在linux内核内部开发者设计了内核定时器&#xff0c;它的工作原理和硬件定时器一样&#xff0c;使用它不需要关注底层的实现&#xff0c;只需要分配定时器对象&#xff0c;初始化对象&#xff0c;启用定时器即可&#xff0c;当定时时间到达之后执行定时器的处理函数。 …

2022年第十二届APMCM亚太地区数学建模竞赛1月加赛E题翻译以及思路

中文2022年亚洲及太平洋地区建模数学竞赛问题E有多少颗核弹可以摧毁地球&#xff1f;1945年8月6日&#xff0c;第二次世界大战已接近尾声。为了尽快结束战争&#xff0c;美国在日本广岛投下了名为 "小男孩" 的第二颗原子弹。这样一颗原子弹炸死了广岛的200000人&…

硬盘容量计算

硬盘容量&#xff08;Hard drive capacity&#xff09;以兆字节&#xff08;MB&#xff09;或千兆字节&#xff08;GB&#xff09;为单位&#xff0c;主流硬盘容量为500G&#xff5e;2TB&#xff0c;影响硬盘容量的因素有单碟容量和碟片数量。许多人发现&#xff0c;计算机中显…

Java--面向对象经典练习题

文章内容 一、文字版格斗游戏 二、对象数组1 三、对象数组2 四、对象数组3 五、对象数组4 题目代码如下&#xff1a; 文字版格斗游戏 格斗游戏&#xff0c;每个游戏角色的姓名&#xff0c;血量&#xff0c;都不相同&#xff0c;再选定人物的时候(new对象的时候)&#xf…

(Java高级教程)第三章Java网络编程-第一节1:网络编程必备网络知识1之网络初识和网络协议

文章目录一&#xff1a;计算机网络基本概念二&#xff1a;计算机网络发展三&#xff1a;网络协议&#xff08;1&#xff09;生活中的协议&#xff08;2&#xff09;网络协议&#xff08;3&#xff09;协议是谁制定的注意&#xff1a;本节会总结一些必要的网络知识&#xff0c;便…

第03讲:HTTP操作之ElasticSearch映射操作

3.1.3、映射操作 有了索引库&#xff0c;等于有了数据库中的 database。 接下来就需要建索引库(index)中的映射了&#xff0c;类似于数据库(database)中的表结构(table)。 创建数据库表需要设置字段名称&#xff0c;类型&#xff0c;长度&#xff0c;约束等;索引库也一…

P11 PyTorch Momentum

参考&#xff1a; 关于梯度下降与Momentum通俗易懂的解释_ssswill的博客-CSDN博客_梯度 momentum 前言&#xff1a; P9讲梯度的时候&#xff0c;讲到过这种算法的梯度更新方法 这边重点讲解一下原理 Momentum算法又叫做冲量算法&#xff0c;其迭代更新公式如下&#xff1a; 实…

【Vue中使用Echarts】响应式布局flexible.js+rem适配方案

文章目录一、vue集成flexible方案第一种&#xff1a;在编译的时候自动转换(px2rem-loader)第二种&#xff1a;直接在写css样式的时候转换(cssrem)二、安装&配置lib-flexible.js三、安装插件cssrem一、vue集成flexible方案 先介绍几个基本的概念 px像素&#xff08;Pixel&…

LeetCode分类刷题---数组篇

刷题班数组1.二分查找704.二分查找35.搜索插入位置34.在排序数组中查找元素的第一个和最后一个位置。69.X的平方和367.有效的完全平方数2.移除元素27.移除元素283.移动零844.比较含退格的字符串977.有序数组的平方3.长度最小的子数组209.长度最小的子数组904.水果成蓝76.最小覆…

2023-01-05 长亭科技 Go 后端开发实习生二面

由于面试官前几天 &#x1f40f; 了&#xff0c;在 HR 面后补了技术二面&#xff0c;不过问得倒也不难&#xff0c;但还是记录下。 1、请做 3 ~ 5 分钟的自我介绍。 2、你说研究生的方向是漏洞挖掘和模糊测试&#xff0c;可以介绍一下吗&#xff1f; 3、简单介绍下缓冲区溢出漏…

2022年中国特色智能工厂领航制造业升级分析报告

易观&#xff1a;当前&#xff0c;新一轮的科技革命和产业变革正在重塑世界格局&#xff0c;科技创新也成为影响国家竞争力的决定性因素。在全球制造业格局重塑的过程中&#xff0c;智能工厂作为全球智能制造产业实践的示范标杆与标准载体&#xff0c;是引领全球制造业企业与工…

机器学习中的数学原理——逻辑回归

这个专栏主要是用来分享一下我在机器学习中的学习笔记及一些感悟&#xff0c;也希望对你的学习有帮助哦&#xff01;感兴趣的小伙伴欢迎私信或者评论区留言&#xff01;这一篇就更新一下《白话机器学习中的数学——逻辑回归》&#xff01;什么是逻辑回归算法逻辑回归 (Logistic…

【信管6.3】成本挣值计算

成本挣值计算铺垫了那么久&#xff0c;不知道大家期待不期待。总算到了挣值计算这一课&#xff0c;这个名字很奇怪呀&#xff0c;什么叫做挣值&#xff1f;成本不就是我们的投资吗&#xff1f;这个挣值到底是要干嘛&#xff1f;带着这些疑问&#xff0c;我们就来看看挣值计算到…

2022全年度奶粉十大热门品牌销量榜单

随着居民收入水平的提升、消费观念的转变及健康饮食意识的逐渐增强&#xff0c;消费者对食品品质的要求也越来越高&#xff0c;奶粉市场也同样如此。当前&#xff0c;国内婴幼儿奶粉市场规模呈稳步增长态势&#xff0c;同时&#xff0c;“三孩政策”的发布实施&#xff0c;也利…

C++模板 - 提高编程

引言 本阶段主要针对C泛型编程和STL技术做详细的讲解&#xff0c;探讨C更深层的使用 1 模板 1.1 模板的概念 模板就是建立通用的模具&#xff0c;大大提高复用性 例如生活中的模板&#xff1a; 一寸照片模板&#xff1a; 模板的特点&#xff1a; 模板不可以直接使用&#…

制造业项目管理软件如何帮助企业做好项目费用管理?

在项目导向型制造型企业中&#xff0c;项目的成本管理与费用控制是企业进行项目评价与利润管控、指导市场选择和项目筛选的重要手段。而传统的手工管理模式下&#xff0c;制造企业管理层很难快速了解到哪些项目出现了延误、哪些项目发生了费用超支、哪些项目产生了变更等问题与…

C#,图像二值化(14)——全局阈值的最佳迭代算法及源代码

1、图像二值化 图像二值化是将彩色图像转换为黑白图像。大多数计算机视觉应用程序将图片转换为二进制表示。图像越是未经处理&#xff0c;计算机就越容易解释其基本特征。 二值化过程 在计算机存储器中&#xff0c;所有文件通常以灰度级的形式存储&#xff0c;灰度级具有从0…