近日Kafka2.6版本发布,距离2.5.0发布只过去了不到四个月的时间。

Kafka 2.6.0包含许多重要的新功能。以下是一些重要更改的摘要:

  • 默认情况下,已为Java 11或更高版本启用TLSv1.3
  • 性能显着提高,尤其是当代理具有大量分区时
  • 扩展Kafka Streams的应用程序更便捷
  • Kafka Streams支持更改时发出
  • 新的metrics可提供更好的运营洞察力
  • 配置为进行连接时,Kafka Connect可以自动创建Topic
  • 改进了Kafka Connect中接收器连接器的错误报告选项
  • Kafka Connect中的新过滤器和有条件地应用SMT
  • “ client.dns.lookup”配置的默认值现在为“ use_all_dns_ips”。
  • 将Zookeeper升级到3.5.8

新功能

  • 添加KStream#repartition操作
  • 使SSL上下文/引擎配置可扩展
  • 默认情况下启用TLSv1.3,并禁用某些较旧的协议
  • 有条件地应用SMT
  • 向流指标添加任务级活动进程比率
  • 重构主循环以一次处理一个任务的多个记录

改善

  • 增强了TransformerSupplier / ProcessorSupplier
  • 清理任务管理
  • 将“ onAssignment”流与“ partitionsAssigned”任务创建合并
  • 公开磁盘读写指标
  • 允许消费者明确触发重新平衡
  • 将gradle更新为6.0+
  • 支持Java 14
  • 将默认版本切换到Scala 2.13
  • -改进“ matchingAcls”的性能
  • 控制台生产者支持client.id的设置

升级指南:

如果要从2.1.x之前的版本升级,请参阅以下注释,以了解用于存储使用者偏移量的架构的更改。将inter.broker.protocol.version更改为最新版本后,将无法降级到2.1之前的版本。

对于滚动升级:

  1. 在所有代理上更新server.properties并添加以下属性。CURRENT_KAFKA_VERSION指的是您要升级的版本。CURRENT_MESSAGE_FORMAT_VERSION是指当前使用的消息格式版本。如果以前覆盖了消息格式版本,则应保留其当前值。或者,如果要从0.11.0.x之前的版本升级,则应将CURRENT_MESSAGE_FORMAT_VERSION设置为与CURRENT_KAFKA_VERSION相匹配。

    • inter.broker.protocol.version = CURRENT_KAFKA_VERSION(例如2.52.4等)
    • log.message.format.version = CURRENT_MESSAGE_FORMAT_VERSION
  2. 如果要从0.11.0.x或更高版本升级,并且尚未覆盖消息格式,则只需要覆盖代理间协议版本。

    • inter.broker.protocol.version = CURRENT_KAFKA_VERSION(例如2.52.4等)
  3. 一次升级一个代理:关闭代理,更新代码,然后重新启动。完成此操作后,代理将运行最新版本,并且您可以验证集群的行为和性能是否符合预期。如果有任何问题,此时仍然可以降级。

  4. 验证集群的行为和性能后,请通过编辑协议版本inter.broker.protocol.version并将其设置为来更改协议版本 2.6

  5. 逐一重新启动代理,以使新协议版本生效。代理开始使用最新的协议版本后,将无法再将群集降级到较旧的版本。

  6. 如果您已按照上述说明覆盖了消息格式版本,则需要再次滚动重启以将其升级到最新版本。一旦所有(或大多数)使用者都升级到0.11.0或更高版本,则在每个代理上将log.message.format.version更改为2.6,然后逐一重新启动它们。请注意,不再维护的较旧的Scala客户端不支持0.11中引入的消息格式,为避免转换成本必须使用较新的Java客户端。

2.6.0注意点

Kafka Streams添加了一种新的处理模式(需要Broker 2.5或更高版本),该模式使用完全一次的保证提高了应用程序的可伸缩性。

缺省情况下,Java 11或更高版本已启用TLSv1.3。如果客户端和服务器均支持TLSv1.3,则将协商该协议,否则将回退至TLSv1.2。

缺省情况下,Java 11或更高版本已启用TLSv1.3。如果客户端和服务器均支持TLSv1.3,则将协商该协议,否则将回退至TLSv1.2。

NotLeaderForPartitionException已弃用,并已替换为NotLeaderOrFollowerException。如果代理不是副本,则获取请求和仅用于领导者或跟随者的其他请求将返回NOT_LEADER_OR_FOLLOWER(6)而不是REPLICA_NOT_AVAILABLE(9),以确保重新分配期间的此暂时错误由所有客户端作为可重试的异常进行处理。

更多Flink,Kafka,Spark等相关技术博文,科技资讯,欢迎关注实时流式计算 公众号后台回复 “电子书” 下载300页Flink实战电子书

Kafka2.6.0发布——性能大幅提升的更多相关文章

  1. [转]XCache 3.0.0 发布,PHP 性能提升方案

    From : http://www.oschina.net/news/34304/xcache-3-0-0 XCache 3.0.0 发布,该版本除了 bug 修复,对 XCache 管理页面做了很多 ...

  2. [转帖]疑似兆芯开先KX-7000跑分曝光:IPC性能大幅提升

    疑似兆芯开先KX-7000跑分曝光:IPC性能大幅提升 https://www.bilibili.com/read/cv4028300 数码 11-23 1589阅读28点赞22评论 尽管有ARM架构 ...

  3. Rsync 3.1.0 发布,文件同步工具

    文件同步工具Rsync 3.1.0发布.2013-09-29 上一个版本还是2011-09-23的3.0.9 过了2年多.Rsync基本是Linux上文件同步的标准了,也可以和inotify配合做实时 ...

  4. 实时流式计算框架Storm 0.9.0发布通知(中文版)

    Storm0.9.0发布通知中文翻译版(2013/12/10 by 富士通邵贤军 有错误一定告诉我 shaoxianjun@hotmail.com^_^) 我们很高兴宣布Storm 0.9.0已经成功 ...

  5. 开源搜索引擎Iveely 0.8.0发布,终见天日

    这是一篇博客,不是,这是一篇开源人的心酸和喜悦,没有人可以理解我们的心情,一路的辛酸一路的艰辛,不过还好,在大家的支持下,总算是终见天日,谢谢那些给予我们无私帮助的朋友.您的支持,依然是我们无限的动力 ...

  6. MySQL 5.6 和 MariaDB-10.0 的性能比较测试

    MySQL 5.6 和 MariaDB-10.0 的性能比较测试 时间 2013-02-14 10:11:34  开源中国 原文  http://www.oschina.net/question/12 ...

  7. 转:Node.js邮件发送组件- Nodemailer 1.0发布

    原文来自于http://www.infoq.com/cn/news/2014/07/node.js-nodemailer1.0-publish Nodemailer是一个简单易用的Node.js邮件发 ...

  8. MemSQL 取代 HDFS 与 Spark 结合,性能大幅提升

    MemSQL 取代 HDFS 与 Spark 结合,性能大幅提升 3,597 次阅读 - 基础架构 Apache Spark是目前非常强大的分布式计算框架.其简单易懂的计算框架使得我们很容易理解.虽然 ...

  9. Apache Storm 1.1.0 发布概览

    写在前面的话 本人长期关注数据挖掘与机器学习相关前沿研究.欢迎和我交流,私人微信:846731084 我自己测试了一下这个版本,总的来说更加稳定,新增的特性并没有一一测试,仅凭kafk-client来 ...

随机推荐

  1. 测试人员应该掌握的oracle知识体系

    闲来无事,总结了一下,软件测试人员应该掌握的基本的oracle数据库知识体系 1.安装 1.1 oracle安装 1.2 oracle升级 1.3 oracle补丁 2.管理 2.1数据库创建(dbc ...

  2. 【Python学习笔记六】获取百度搜索结果以及百度返回“百度安全验证”问题解决

    1.获取百度搜索结果页面主要是修改百度搜索url中的参数实现,例如查询的关键字为wd: 举例:https://www.baidu.com/s?wd=python",这样就可以查询到‘pyth ...

  3. 带你上手阿里开源的 Java 诊断利器:Arthas

    本文适合有 Java 基础知识的人群. 本文作者:HelloGitHub-秦人 HelloGitHub 推出的<讲解开源项目>系列,今天给大家带来一款阿里开源的 Java 诊断利器 Art ...

  4. windows上Scrapy 框架的安装

    采用在命令行直接安装的方式:pip install scrapy报错:   到这个网站下载 Twisted:https://www.lfd.uci.edu/~gohlke/pythonlibs/进入网 ...

  5. DJANGO-天天生鲜项目从0到1-011-订单-订单提交和创建

    本项目基于B站UP主‘神奇的老黄’的教学视频‘天天生鲜Django项目’,视频讲的非常好,推荐新手观看学习 https://www.bilibili.com/video/BV1vt41147K8?p= ...

  6. deepin换源

    python的pip源 pip install pip -U pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/sim ...

  7. Python对列表去重的各种方法

    一.循环去重   二.用 set() 去重 1.set()对list去重 2.list 是有序的,用 sort() 把顺序改回来  三.利用 dict 的属性来去重 1.用 dict 的 fromke ...

  8. Spring Security系列之极速入门与实践教程

    @ 目录 1. Spring Security 2. 实验环境准备 3. 日志级别修改 4. 配置用户名/密码 5. 数据库方式校验 6. 不拦截静态资源 7. 自定义登录页面 8. Remember ...

  9. Android实现EditText插入表情、超链接等格式

    参考:https://www.jianshu.com/p/84067ad289d2 参考:https://www.jianshu.com/p/d82ac2edc7e8

  10. 《Python游戏编程快速上手》|百度网盘免费下载|Python基础编程

    <Python游戏编程快速上手>|百度网盘免费下载| 提取码:luy6 Python是一种高级程序设计语言,因其简洁.易读及可扩展性日渐成为程序设计领域备受推崇的语言. 本书通过编写一个个 ...