前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >分布式 | DBLE 3.21.10.0 来了!

分布式 | DBLE 3.21.10.0 来了!

作者头像
爱可生开源社区
发布2021-11-30 13:32:32
4130
发布2021-11-30 13:32:32
举报
文章被收录于专栏:爱可生开源社区

3.21.10.0 版本

DBLE Release Notes

以下对 DBLE 3.21.10.0 版本的 Release Notes 进行详细解读。

文章主要分为以下四部分内容:

一、DBLE 项目介绍

二、新版本主要更新解读

三、完整 Release Notes

四、LTS 版本更新

一、DBLE 项目介绍

DBLE 是企业级开源分布式中间件,江湖人送外号 “MyCat Plus”;以其简单稳定,持续维护,良好的社区环境和广大的群众基础得到了社区的大力支持;

DBLE

破壳日:2017.10.24

爱好:开源

技能:数据水平拆分、读写分离、分布式事务支持、多分片算法、全局 ID、IP/SQL 黑白名单

特长:MySQL 语法兼容、复杂查询优化、低改造成本、成熟稳定、成熟技术栈

  • DBLE 官方项目: https://github.com/actiontech/dble
  • DBLE 官方文档(已更新): https://actiontech.github.io/dble-docs-cn
  • 新版本 DBLE 下载地址及 Release Notes: https://github.com/actiontech/dble/releases

二、新版本主要功能更新解读

本次发版 3.21.10.0 是 DBLE 今年的第三次发版。

新版 DBLE 新增&重构功能 3 个,修复缺陷 7+ 个,和旧版本的不兼容项调整 0 处。

主要更新:

1、支持单个 dble 脱离/回归集群

在部分场合下,集群状态下的 dble 可能需要临时断开和集群中心(如zookeeper)的连接。

典型的应用场景是:集群中心需要进行升级/维护时。

在版本<3.21.10 , 唯一的方式是配置修改为单机版并重新启动 dble;需要加回来时,改会原来的配置并重启 dble 。但这对业务影响很大,通常在生产环境下难以接受。

dble提供了一个脱离集群的指令,可以在不重启的情况下,临时断开和集群中心的连接,让 dble 以一个 伪集群模式 的单实例方式运行。等运维工作结束后,还可以重新加入集群。

详情请见文档对应章节

2、新的流量控制

在之前的 dble 版本中,当进行大文件 load 以及大结果集查询的过程中,都有可能由于数据的发送不及时造成数据在 dble 内存中堆积,当条件足够的时候甚至有可能造成 dble 服务的 OOM ,进而影响服务的稳定运行。

在最初 2.20.04 中由社区开发者@ssxlulu提供了对于这部分流量控制的实现,通过连接级别的写队列长度,进行数据加载/获取的负反馈调节,从而实现在数据 load 和大结果集查询过程中的内存使用情况稳定,在此基础上,我们又做了一些改进。

无论当前端连接写回客户端过慢造成积压(比如中间件和客户端之间网络不好可能会造成此现象)或者是后端已读取但未处理的 MySQL 数据积压过多(比如 dble 所在机器 cpu 性能不够),都可以停止从后侧数据库读取,减轻 dble 本身的压力。

详情请见文档对应章节。

三、完整 Release Notes

特性:

  • [#2866] 支持单个 dble 脱离/回归集群. 更多详细信息,请参见 doc 。
  • [#2844] 支持默认的分片模式 [alpha 功能]。更多详细信息,请参见doc 。
  • [#2845] 新的流量控制:添加后端读取水位。更多详细信息,请参见doc 。

主要缺陷修复:

  • [#11] EPollArrayWrapper.epollWait 可能导致 100% CPU。
  • [#2896] show @@dbInstance 命令,READ_LOAD 和 WRITE_LOAD 始终显示为 0 。
  • [#2747] fakeMySQLVersion 不支持 MariaDB 10.x,感谢@lenovore 报告此问题。
  • [#2750] 支持`add/truncate/dop partition` , 感谢@13611582598 报告此问题。
  • [#2611] 优化er表问题,感谢@jmbkeyes 报告错误。
  • [#2828] 三表join,结果可能有误,感谢@mwhei 报告 bug 。
  • 有时复杂的查询可能会导致内存泄漏。

和旧版本的不兼容项:

四、LTS 版本更新

对于 LTS 的版本,有小版本发出,修复一些 bug:

3.20.07.7

  • 执行 dbGroup @@disable name ='dbGroup1';偶现 hang 住
  • 连接创建失败时,连接数统计的问题导致的连接泄漏
  • mysql 实例从 disable 到 active 状态后,dble 不可用
  • 有时复杂的查询可能会导致内存泄漏

3.20.10.7

  • 执行 dbGroup @@disable name ='dbGroup1';偶现 hang 住
  • 连接创建失败时,连接数统计的问题导致的连接泄漏
  • mysql 实例从 disable 到 active 状态后,dble 不可用
  • 有时复杂的查询可能会导致内存泄漏
  • [#2873]set autocommit=true 的问题
  • 9066 端口执行 show @@connection.sql 报错

3.21.02.4

  • 执行 dbGroup @@disable name ='dbGroup1';偶现 hang 住
  • 连接创建失败时,连接数统计的问题导致的连接泄漏
  • mysql 实例从 disable 到 active 状态后,dble 不可用
  • 有时复杂的查询可能会导致内存泄漏
  • [#2873]set autocommit=true 的问题
  • 管理端口执行 show @@connection.sql 报错
  • 集群环境下 dble 执行 ddl 语句 hang 住
  • show @@dbInstance 命令,READ_LOAD 和 WRITE_LOAD 始终显示为 0

3.21.06.2

  • 执行 dbGroup @@disable name ='dbGroup1';偶现 hang 住
  • 连接创建失败时,连接数统计的问题导致的连接泄漏
  • mysql 实例从 disable 到 active 状态后,dble 不可用
  • 有时复杂的查询可能会导致内存泄漏。
  • [#2873]set autocommit=true 的问题
  • 管理端口执行 show @@connection.sql 报错
  • 集群环境下 dble 执行 ddl 语句 hang 住
  • show @@dbInstance 命令,READ_LOAD 和 WRITE_LOAD 始终显示为 0

本次的发版报道就到这里啦~

近期好文:

分布式 | dble 纯读写分离功能-隐式提交支持度汇总

分布式 | 关于 druid 连接池参数问题

分布式 | DBLE 关联查询下压优化

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-11-22,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 爱可生开源社区 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1、支持单个 dble 脱离/回归集群
相关产品与服务
云数据库 SQL Server
腾讯云数据库 SQL Server (TencentDB for SQL Server)是业界最常用的商用数据库之一,对基于 Windows 架构的应用程序具有完美的支持。TencentDB for SQL Server 拥有微软正版授权,可持续为用户提供最新的功能,避免未授权使用软件的风险。具有即开即用、稳定可靠、安全运行、弹性扩缩等特点。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档