kafka和storm集成

我将在此处描述Storm和Kafka集成模块的一些细节,一些您应该意识到的重要错误以及如何克服其中的一些错误(尤其是对于生产安装)。

我在生产安装中大量使用Apache Storm,并将Kafka作为主要输入源(Spout)。

使用Kafka和版本的Storm集成模块:

  • Storm 0.x通过现有模块storm-kafka支持Kafka 0.8.x
  • Storm 1.0.x通过新模块storm-kafka-client支持Kafka 0.9.x
  • Storm 1.x通过新模块storm-kafka-client支持Kafka 0.10.x

最近,我将Storm 1.0.3 (从0.9.6)升级到Kafka 0.9.0.1 (从0.8.2.2)。
不幸的是,Storm 1.0.3有两个主要的错误 ,您必须解决这些错误才能在生产环境中使用它。

主要错误(与Kafka相关):

  1. “如果在运行元组时重新分配分区,则新的Kafka喷嘴会崩溃[ JIRA-2104 ]在1.0.x分支中已解决( Pull-1980 )
  2. “ Storm-kafka-client:不总是重放失败的元组” [ JIRA-2087 ]在1.x分支中已解决( Pull-1826 )

当开始从Storm 0.9.6到1.0.3的迁移过程时,我遇到了上述错误。 在强调我的拓扑时,各种事情开始不起作用,或者看到停滞不前的Workers停止处理数据。
在阅读了许多日志并进行了许多测试之后,我们终于了解了该问题(KafkaSpout错误)。 我们暂停了迁移过程,并希望解决这些问题。
幸运的是,Storm提交者已经修复了这些错误,因此已经提供了解决方案。 非常感谢Storm社区!!!

为了解决这些问题,我将这两个修复程序移植到了“ storm-kafka-client ”的派生版本中,并发布了具有新maven版本( 1.0.3- <custom> 1.0 )的新自定义模块。 然后,我仅在项目中引用新的自定义版本。
之后,我们再次开始压力测试,一切都按预期进行。
请注意,错误“ 2087”仅在1.x分支中已修复,但将其移植到1.0.3版本非常容易。

幸运的是,几天前发布了Storm 1.1.0 。 此版本已经修复了这些错误以及许多其他错误。 我尚未进行测试,但是我会尽快尝试。
当我将这些修复移植回1.0.3版本时,没有Storm 1.1.0版本。

如果您打算使用Storm 1.0.3发行版,则必须注意该发行版的一些其他错误,您可能需要在“ custom ”发行版中对其进行修复:

  • “ Kafka中断可能导致拓扑锁定” [ STORM-2440 ] [ FIX ]
  • “ ReportErrorAndDie并不总是消亡” [ STORM-2194 ] [ 修复 ]
  • “在捕获InterruptedException后,Utils.sleep方法未设置中断标志” [ STORM-2396 ] [ 修复 ]
  • “即使topology.eventlogger.executors = 0,事件记录器螺栓也会实例化” [ STORM-2389 ] [ 修复 ]
  • “故障恢复Blob删除在BlobSynchronizer.syncBlobs中也失败” [ STORM-2386 ] [ FIX ](与Nimbus HA有关)
  • “ Storm-HDFS的listFilesByModificationTime已损坏” [ STORM-2350 ] [ 修复 ]
  • “ ReadClusterState的ProfileAction处理映射中的类型不匹配” [ STORM-2345 ] [ FIX ]

上述大多数错误(2440和2194除外)已在Storm 1.1.0版本中解决。 新版本包含您可能感兴趣的新功能(流式SQL,Druid和OpenTSB集成等)。

最好的祝福,
阿德里安斯·达迪斯(Adrianos Dadis)。
真正的民主需要免费软件

翻译自: https://www.javacodegeeks.com/2017/04/important-production-bugs-fixes-storm-kafka-integration.html

kafka和storm集成

kafka和storm集成_Storm和Kafka集成的重要生产错误和修复相关推荐

  1. Storm和Kafka集成的重要生产错误和修复

    我将在此处描述Storm和Kafka集成模块的一些细节,一些您应该意识到的重要错误以及如何克服其中的一些错误(尤其是对于生产安装). 我在生产安装中大量使用Apache Storm,并将Kafka作为 ...

  2. Storm精华问答 | Kafka在Storm中的角色是什么?

    戳蓝字"CSDN云计算"关注我们哦! Storm是Twitter开源的分布式实时大数据处理框架,被业界称为实时版Hadoop.随着越来越多的场景对Hadoop的MapReduce高 ...

  3. Kafka剖析(一):Kafka背景及架构介绍--转

    原文地址:http://www.infoq.com/cn/articles/kafka-analysis-part-1?utm_source=infoq&utm_campaign=user_p ...

  4. Kafka剖析(一):Kafka背景及架构介绍

    Kafka是由LinkedIn开发的一个分布式的消息系统,使用Scala编写,它以可水平扩展和高吞吐率而被广泛使用.目前越来越多的开源分布式处理系统如Cloudera.Apache Storm.Spa ...

  5. Kafka设计解析(七)- Kafka Stream

    本文转发自技术世界,原文链接 http://www.jasongj.com/kafka/kafka_stream/ Kafka Stream背景 Kafka Stream是什么 Kafka Strea ...

  6. java kafka分布式_JavaWeb项目架构之Kafka分布式日志队列

    架构.分布式.日志队列,标题自己都看着唬人,其实就是一个日志收集的功能,只不过中间加了一个Kafka做消息队列罢了. kafka介绍 Kafka是由Apache软件基金会开发的一个开源流处理平台,由S ...

  7. Kafka消息队列学习笔记1——Kafka入门1

    目录 1.消息队列 1.1.传统消息队列的应用场景 2.1.1.异步处理 1.1.2.系统解耦 1.1.3.流量削峰 1.1.4.日志处理 1.2.生产者-消费者模型 1.3.消息队列的两种模式 1. ...

  8. Kafka设计解析(一)- Kafka背景及架构介绍

    本文转发自技术世界,原文链接 http://www.jasongj.com/2015/03/10/KafkaColumn1 背景介绍 Kafka创建背景 Kafka是一个消息系统,原本开发自Linke ...

  9. kafka是什么?深刻理解kafka

    背景介绍 Kafka简介 Kafka是一种分布式的,基于发布/订阅的消息系统.主要设计目标如下: 以时间复杂度为O(1)的方式提供消息持久化能力,并保证即使对TB级以上数据也能保证常数时间的访问性能 ...

最新文章

  1. Linux 单用户模式修改密码与救援模式修改密码总结
  2. python3 copy_python3 深浅copy对比详解
  3. 第二次启用httpd24调用mysql时出现的错误
  4. android自定义push通知_android通过自定义toast实现悬浮通知效果的示例代码
  5. Java判断文件是否为图片文件(GIF,PNG,JPG)
  6. Android Studio修改debug.keystore
  7. 基于bootstrap的 按钮-隐藏 案例
  8. javascript中的字符串编码、字符串方法详解
  9. 范例 在 Setting 里加入 HiApk Settings 选项
  10. ASM的基础使用 Android 自动化埋点方案原理剖析
  11. 系统功能测试用例模板
  12. 如何向打游戏一样学习?(摘自大佬,如有冒犯,请多包涵)
  13. 李白的诗: 南陵别儿童入京
  14. photoshop ps 替换图片文字
  15. 检索的原理和方法步骤
  16. 知识图谱问答 | (3) 关系分类概述
  17. 成功焊接BGA芯片技巧
  18. 苹果延长13英寸MacBook Pro背光维修计划
  19. 国务院智囊建议全面放开二胎:越晚越被动
  20. 顺丰职级分成4级_阿里职位层级(附P级详细要求)

热门文章

  1. 一二三系列之CodeChef分块——Chef and Churu,Chef and Problems,Children Trips
  2. AT2390-[AGC016F]Games on DAG【状压dp,SG函数】
  3. P3261-[JLOI2015]城池攻占【左偏树】
  4. jzoj4671-World Tour【图论,bfs】
  5. codeforces1471 D. Strange Definition
  6. 【LCT】弹飞绵羊(luogu 3203/金牌导航 LCT-2)
  7. 秀姿势(jzoj 3464)
  8. HDU5528 - Count a * b
  9. 2017西安交大ACM小学期数据结构 [树状数组]
  10. Spark SQL(十)之基于物品的推荐公式