gpt4 book ai didi

java - 如果某些 Kafka 节点时间偏移不同步,Spark 流作业会卡住

转载 作者:搜寻专家 更新时间:2023-11-01 03:18:29 24 4
gpt4 key购买 nike

我们有一个从 Gnip API 读取并将推文发送到 Kafka 集群的 Spark 流作业。

Kafka 集群是使用 Cloudera Manager 安装的。

有时,cloudera 管理器会显示某些 Kafka 节点的健康状况不佳消息。健康状况不佳消息与 NTP 服务有关。某些节点突然与 NTP 服务器不同步。

一旦发生这种情况,Spark streaming 作业就会卡住,大量作业排队等待很长时间。

为什么Kafka节点与NTP服务器的同步会影响spark streaming作业中的Kafka producer?

最佳答案

每个分区在 Kafka 代理中都有其领导者和追随者,Kafka 通过它们提供容错能力。该机制基于使用NTP服务的ZooKeeper。

如果你使用默认配置,leader会收到你的数据,并尽量写入followers。在数据写入每个跟随者之前,它不会响应成功消息。所以您的 Spark 应用程序会阻塞。

您还可以更改您的 Kafka 配置以在领导者收到数据时立即响应或在领导者将数据写入磁盘时立即响应。

您可以在 Kafka documents 中找到更多信息.

关于java - 如果某些 Kafka 节点时间偏移不同步,Spark 流作业会卡住,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39312317/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com