首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何在读取kafka主题消息时处理数据库宕机时的异常

在处理从Kafka主题读取消息时遇到数据库宕机的异常情况,需要采取一定的策略来确保系统的稳定性和数据的完整性。以下是一些基础概念和相关策略:

基础概念

  1. Kafka: 一个分布式流处理平台,用于高性能数据管道、流分析、数据集成和关键任务应用。
  2. 数据库宕机: 指数据库服务因故障而无法正常运行,导致应用程序无法进行数据的读写操作。

相关优势

  • 容错性: 设计良好的系统能够在部分组件故障时继续运行。
  • 数据一致性: 确保即使在异常情况下,数据也不会丢失或被错误处理。

类型

  • 临时宕机: 数据库短暂不可用,通常很快能恢复。
  • 长时间宕机: 数据库服务需要较长时间才能恢复。

应用场景

  • 实时数据处理系统: 如金融交易、订单处理等,对数据的实时性和一致性要求极高。
  • 日志聚合和分析系统: 需要持续不断地从Kafka中读取数据进行分析。

异常处理策略

1. 异常捕获与重试机制

在读取Kafka消息并尝试写入数据库时,使用try-catch块捕获可能的异常,并实施重试逻辑。

代码语言:txt
复制
import time
from kafka import KafkaConsumer

consumer = KafkaConsumer('my_topic', bootstrap_servers='localhost:9092')

for message in consumer:
    try:
        # 尝试处理消息并写入数据库
        process_and_save_to_db(message)
    except DatabaseError as e:
        print(f"数据库错误: {e}")
        time.sleep(5)  # 等待一段时间后重试
        continue

2. 消息队列缓冲

使用另一个消息队列(如RabbitMQ)作为缓冲,当数据库不可用时,先将消息写入此队列,待数据库恢复后再进行处理。

3. 幂等性设计

确保对数据库的操作是幂等的,即多次执行同一操作与一次执行的结果相同。这有助于在重试时避免数据重复。

4. 监控与告警

设置监控系统实时监控数据库状态,并在检测到宕机时发送告警通知运维团队。

5. 数据备份与恢复策略

定期备份数据库,并制定详细的数据恢复流程以应对长时间宕机的情况。

解决问题的步骤

  1. 诊断问题: 首先确定数据库宕机的具体原因,如硬件故障、网络问题还是软件错误。
  2. 临时措施: 启动应急预案,如切换到备用数据库或使用读写分离架构。
  3. 根本解决: 针对宕机原因进行修复,如更换损坏的硬件、优化网络配置或升级数据库软件。
  4. 恢复验证: 在问题解决后,进行全面测试以确保数据库能够稳定运行并处理之前的积压消息。

通过上述策略和步骤,可以有效地处理在读取Kafka主题消息时遇到的数据库宕机异常,保障系统的可靠性和数据的完整性。

相关搜索:在kafka中阅读多个主题时,如何分辨特定消息的主题?如何在读取kafka主题时验证无效的分区名称有没有办法在python中使用多进程来读取kafka主题中的大量消息?我如何确保我的消费者按顺序处理kafka主题中的消息,只处理一次?如何修复处理从Arduino读取时出现的空指针异常在使用seekToErrorHandler消费kafka主题的消息时,如何将导致DeserializationException的记录发送到DLT?如何确保在kafka不工作时发送的消息不会丢失?在Notification中打开新的intent时如何处理异常?filebeat在输出到Kafka时是如何处理可靠性的?在使用Select小部件时,我是如何处理异常的ValueError in python exception:当用户输入嵌套在函数的参数中时如何处理。异常发生时想返回消息吗在使用序列表达式时,如何处理F#中的异常?在处理C#中的异常时,如何压缩大量的小型Try-Catch块?为什么我在尝试从正在写入的文件中读取时遇到未处理的异常:System.IO.IOException?当两个不同端口的应用程序通过两个不同的端口监听同一个kafka主题时,如何避免重复消息?在Kafka中,我们如何进行事务处理,从主题X消费并发布到主题Y。因此,如果发布到Y失败,则我的消费者偏移量保持不变在构建Outlook加载项时,我应该如何处理读取iframe中的cookies (第三方cookies)如何避免在将BigQuery数据读取到自定义数据类型时出现警告消息:无法验证BoundedSource类型的序列化元素在将postgreSQL数据库加载到数据帧中时,如何处理Flask和Heroku中的“内存配额大大超出”错误?
相关搜索:
页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Apache Kafka教程--Kafka新手入门

Kafka中的消息传递系统 当我们将数据从一个应用程序转移到另一个应用程序时,我们使用了消息传递系统。它的结果是,不用担心如何分享数据,应用程序可以只关注数据。分布式消息传递是建立在可靠的消息队列上。...因此,当涉及到实时处理时,这些技术并不适合。然后,在2011年,Kafka被开源了。 为什么我们要使用Apache Kafka集群? 我们都知道,大数据中存在着巨大的数据量。...例如,一个连接到关系型数据库的连接器可能会捕获一个表的每一个变化。 Kafka组件 利用以下组件,Kafka实现了信息传递。 Kafka主题 基本上,消息的集合就是Topic。...Kafka消费者 这个组件订阅一个(多个)主题,读取和处理来自该主题的消息。 Kafka Broker Kafka Broker管理主题中的消息存储。...然而,如果Kafka被配置为保留消息24小时,而消费者的停机时间超过24小时,消费者就会丢失消息。而且,如果消费者的停机时间只有60分钟,那么可以从最后的已知偏移量读取消息。

1.1K40

我与Apache Storm和Kafka合作的经验

在使用Kafka和Storm之前,您应该了解一些关于每个应用的知识。 Kafka - 消息队列 卡夫卡是一个优雅的消息队列。您可以将其用作发布 - 订阅或广播。它是如何完成它的工作的?...在一个队列中,消费者池可以从服务器中读取消息且每条消息都发送到其中一个服务器上;在发布 - 订阅模型中,消息被广播给所有消费者。Kafka提供了概括了这两个模型的单一消费者抽象——消费群体。...可配置螺栓和喷口在一个的单元中运行的则称为“Topology(拓扑)”。 但真正的问题是确保一次保证处理。意思是,您该如何保证在Kafka队列内只读取一次消息并成功处理。...另一个重要的问题是解决如何应对失败处理。警告将抛出一个“new FailedException()”。失败异常将不会标记信息为已处理,故信息将会被重新处理。...这可以确保当由于网络问题或类似用例而导致与数据库的临时连接丢失时不会丢失消息。但请要小心处理并确保在信息正在被处理的情况下不写入重复数据。 这些是从我们的系统中所学习到的。

1.6K20
  • Kafka 消费者

    应用从Kafka中读取数据需要使用KafkaConsumer订阅主题,然后接收这些主题的消息。在我们深入这些API之前,先来看下几个比较重要的概念。...另外,我们也可以使用正则表达式来匹配多个主题,而且订阅之后如果又有匹配的新主题,那么这个消费组会立即对其进行消费。正则表达式在连接Kafka与其他系统时非常有用。...假如一个消费者在重平衡前后都负责某个分区,如果提交位移比之前实际处理的消息位移要小,那么会导致消息重复消费 假如在重平衡前某个消费者拉取分区消息,在进行消息处理前提交了位移,但还没完成处理宕机了,然后Kafka...考虑这么个场景:我们从Kafka中读取消费,然后进行处理,最后把结果写入数据库;我们既不想丢失消息,也不想数据库中存在重复的消息数据。...如果调用wakup时,主线程正在处理消息,那么在下一次主线程调用poll时会抛出异常。

    2.3K41

    Java分布式面试题集合(收藏篇)

    问:如何保证消息队列的高可用?(多副本) 问:如何保证消息不被重复消费?(如何保证消息消费的幂等性) 问:如何保证消息的可靠性传输?(如何处理消息丢失的问题) 问:如何保证消息的顺序性?...消息压缩、分批发送:Kafka 可以将数据记录分批发送,从生产者到文件系统(Kafka 主题日志)到消费者,可以端到端的查看这些批次的数据。...异步发送消息的同时能够对异常情况进行处理,生产者提供了 Callback 回调。 问:Kafka 生产者发送消息,有哪些分区策略? Kafka 的分区策略指的就是将生产者发送到哪个分区的算法。...不过,它的延迟比 acks = 1 时更高,因为我们要等待不只一个服务器节点接收消息。 问:Kafka 如何避免消息丢失?...如果某分区的 Leader 不可用, Kafka 就从 ISR 集合中选择一个副本作为新的 Leader。 分库分表 问:数据库如何处理海量数据? 分库分表,主从架构,读写分离。

    38330

    分布式系统架构,回顾2020年常见面试知识点梳理(每次面试都会问到其中某一块知识点)

    问:如何保证消息队列的高可用?(多副本) 问:如何保证消息不被重复消费?(如何保证消息消费的幂等性) 问:如何保证消息的可靠性传输?(如何处理消息丢失的问题) 问:如何保证消息的顺序性?...消息压缩、分批发送:Kafka 可以将数据记录分批发送,从生产者到文件系统(Kafka 主题日志)到消费者,可以端到端的查看这些批次的数据。...异步发送消息的同时能够对异常情况进行处理,生产者提供了 Callback 回调。 问:Kafka 生产者发送消息,有哪些分区策略? Kafka 的分区策略指的就是将生产者发送到哪个分区的算法。...分区 1 的第一个 Follower 在 broker3 上面,第二个 Follower 在 broker4 上面。 问:Kafka 如何保证消息的顺序性?...不过,它的延迟比 acks = 1 时更高,因为我们要等待不只一个服务器节点接收消息。 问:Kafka 如何避免消息丢失?

    59800

    【云原生进阶之PaaS中间件】第三章Kafka-4.4-消费者工作流程

    在使用自动提交时, 每次调用轮询方法都会把上一次调用返回的最大偏移量提交上去 , 它并不知道具体哪些消息已经被处理了 , 所以在再次调用之前最好确保所有当前调用返回的消息都已经处理完毕(enable.auto.comnit...一般情况下不会有什么问题, 不过在处理异常或提前退出轮询时要格外小心。 自动提交虽然方便 , 但是很明显是一种基于时间提交的方式 , 不过并没有为我们留有余地来避免重复处理消息。...2.6.2 从特定偏移量开始记录 到目前为止 , 我们知道了如何使用 poll() 方法从各个分区的最新偏移量处开始处理消息。 不过, 有时候我们也需要从特定的偏移量处开始读取消息。...在使用 Kafka 以外的系统来存储偏移量时 , 它将给我们带来更大的惊喜 -- 让消息的业务处理和偏移量的提交变得一致。...现在的问题是: 如果偏移量是保存在数据库里而不是 Kafka 里 , 那么消费者在得到新分区时怎么知道该从哪里开始读取 ? 这个时候可以使用 seek() 方法。

    18210

    不讲武德,Java分布式面试题集合含答案!

    问:如何保证消息队列的高可用?(多副本) 问:如何保证消息不被重复消费?(如何保证消息消费的幂等性) 问:如何保证消息的可靠性传输?(如何处理消息丢失的问题) 问:如何保证消息的顺序性?...消息压缩、分批发送:Kafka 可以将数据记录分批发送,从生产者到文件系统(Kafka 主题日志)到消费者,可以端到端的查看这些批次的数据。...异步发送消息的同时能够对异常情况进行处理,生产者提供了 Callback 回调。 问:Kafka 生产者发送消息,有哪些分区策略? Kafka 的分区策略指的就是将生产者发送到哪个分区的算法。...不过,它的延迟比 acks = 1 时更高,因为我们要等待不只一个服务器节点接收消息。 问:Kafka 如何避免消息丢失?...如果某分区的 Leader 不可用, Kafka 就从 ISR 集合中选择一个副本作为新的 Leader。 分库分表 问:数据库如何处理海量数据? 分库分表,主从架构,读写分离。

    49420

    全面介绍Apache Kafka™

    应用程序(生产者)将消息(记录)发送到Kafka节点(代理),并且所述消息由称为消费者的其他应用程序处理。所述消息存储在主题中,并且消费者订阅该主题以接收新消息。 ?...你可能想知道这是如何以最明智的方式做出明智的选择。这背后有许多优化使其可行: Kafka有一个将消息组合在一起的协议。...数据分发和复制 我们来谈谈Kafka如何实现容错以及它如何在节点之间分配数据。 数据复制 分区数据在多个代理中复制,以便在一个代理程序死亡时保留数据。...它用于存储所有类型的元数据,提到一些: 消费者群体的每个分区的偏移量(尽管现代客户端在单独的Kafka主题中存储偏移量) ACL(访问控制列表) - 用于限制访问/授权 生产者和消费者配额 - 最大消息...流 在Kafka中,流处理器是从输入主题获取连续数据流,对此输入执行一些处理并生成数据流以输出主题(或外部服务,数据库,垃圾箱,无论何处......)的任何内容。

    1.3K80

    CKafka系列学习文章 - 什么是消息队列 ?(一)

    | 导语 在大家的工作当中,是否碰到大量的插入、更新请求同时到达数据库,这会导致行或表被锁住,最后会因为请求堆积过多而触发“连接数过多的异常”(Too Many Connections)错误,遇到这样的清况...你又是如何处理? 接下来要介绍一下消息队列: 1,什么是消息队列? 2,为什么要用消息队列? 3,消息队列有那些作用? 4,市面上又有那些消息队列可以用?...二、为什么要用消息队列 当你的客户量一下暴涨时,像前几年大家一起抢购小米手机时,像这种高并发的场景中,由于来不及同步处理请求,接收到的请求往往会发生阻塞。...例如:大量的插入、更新请求同时到达数据库,这会导致行或表被锁住,最后会因为请求堆积过多而触发“连接数过多的异常”(Too Many Connections)的错误,相信大家在工作当中都有碰到过。...2、异步处理 在之前我们实现用户注册账号时,服务程序需要给用户发送邮件注册信息和短息注册信息。我们常用的做法是:串行方式和并行方式。

    4.3K114

    消息队列消息丢失和消息重复发送的处理策略

    Kafka中如何处理事务 Kafka 中的事务解决问题,确保在一个事务中发送的多条信息,要么都成功,要么都失败。也就是保证对多个分区写入操作的原子性。...通过配合 Kafka 的幂等机制来实现 Kafka 的 Exactly Once,满足了读取-处理-写入这种模式的应用程序。当然 Kafka 中的事务主要也是来处理这种模式的。...栗如:在流计算中,用 Kafka 作为数据源,并且将计算结果保存到 Kafka 这种场景下,数据从 Kafka 的某个主题中消费,在计算集群中计算,再把计算结果保存在 Kafka 的其他主题中。...这个过程中,要保证每条消息只被处理一次,这样才能保证最终结果的成功。Kafka 事务的原子性就保证了,读取和写入的原子性,两者要不一起成功,要不就一起失败回滚。...队列持久化 队列的持久化,是通过在声明队列时将 durable 参数置为 true 实现的,队列的持久化能保证其本身的元数据不会因异常情况而丢失,但是并不能保证内部所存储的消息不会丢失。

    1.8K20

    Apache Kafka - 构建数据管道 Kafka Connect

    它描述了如何从数据源中读取数据,并将其传输到Kafka集群中的特定主题或如何从Kafka集群中的特定主题读取数据,并将其写入数据存储或其他目标系统中。...,或从Kafka集群中的指定主题读取数据,并将其写入关系型数据库中。...Message queues连接器:用于从消息队列(如ActiveMQ、IBM MQ和RabbitMQ)中读取数据,并将其写入Kafka集群中的指定主题,或从Kafka集群中的指定主题读取数据,并将其写入消息队列中...Kafka集群中的指定主题读取数据,并将其写入NoSQL数据库中。...当连接器无法处理某个消息时,它可以将该消息发送到Dead Letter Queue中,以供稍后检查和处理。 Dead Letter Queue通常是一个特殊的主题,用于存储连接器无法处理的消息。

    99220

    Flink实战(八) - Streaming Connectors 编程

    一种常见的模式是在一个Map或多个FlatMap 中查询外部数据库或Web服务以渲染主数据流。 Flink提供了一个用于异步I / O的API, 以便更有效,更稳健地进行这种渲染。...要使用此反序列化模式,必须添加以下附加依赖项: 当遇到因任何原因无法反序列化的损坏消息时,有两个选项 - 从deserialize(...)方法中抛出异常将导致作业失败并重新启动,或者返回null以允许...它还允许覆盖目标主题,以便一个生产者实例可以将数据发送到多个主题。 3.8 Kafka消费者开始位置配置 Flink Kafka Consumer允许配置如何确定Kafka分区的起始位置。...请注意,当作业从故障中自动恢复或使用保存点手动恢复时,这些起始位置配置方法不会影响起始位置。在恢复时,每个Kafka分区的起始位置由存储在保存点或检查点中的偏移量确定。...在read_committed模式中KafkaConsumer,任何未完成的事务(既不中止也不完成)将阻止来自给定Kafka主题的所有读取超过任何未完成的事务。

    2K20

    Flink实战(八) - Streaming Connectors 编程

    一种常见的模式是在一个Map或多个FlatMap 中查询外部数据库或Web服务以渲染主数据流。 Flink提供了一个用于异步I / O的API, 以便更有效,更稳健地进行这种渲染。...要使用此反序列化模式,必须添加以下附加依赖项: 当遇到因任何原因无法反序列化的损坏消息时,有两个选项 - 从deserialize(...)方法中抛出异常将导致作业失败并重新启动,或者返回null以允许...它还允许覆盖目标主题,以便一个生产者实例可以将数据发送到多个主题。 3.8 Kafka消费者开始位置配置 Flink Kafka Consumer允许配置如何确定Kafka分区的起始位置。...请注意,当作业从故障中自动恢复或使用保存点手动恢复时,这些起始位置配置方法不会影响起始位置。在恢复时,每个Kafka分区的起始位置由存储在保存点或检查点中的偏移量确定。...在read_committed模式中KafkaConsumer,任何未完成的事务(既不中止也不完成)将阻止来自给定Kafka主题的所有读取超过任何未完成的事务。

    2.9K40

    Flink实战(八) - Streaming Connectors 编程

    一种常见的模式是在一个Map或多个FlatMap 中查询外部数据库或Web服务以渲染主数据流。 Flink提供了一个用于异步I / O的API, 以便更有效,更稳健地进行这种渲染。...要使用此反序列化模式,必须添加以下附加依赖项: 当遇到因任何原因无法反序列化的损坏消息时,有两个选项 - 从deserialize(…)方法中抛出异常将导致作业失败并重新启动,或者返回null以允许Flink...它还允许覆盖目标主题,以便一个生产者实例可以将数据发送到多个主题。 3.8 Kafka消费者开始位置配置 Flink Kafka Consumer允许配置如何确定Kafka分区的起始位置。...请注意,当作业从故障中自动恢复或使用保存点手动恢复时,这些起始位置配置方法不会影响起始位置。在恢复时,每个Kafka分区的起始位置由存储在保存点或检查点中的偏移量确定。...在read_committed模式中KafkaConsumer,任何未完成的事务(既不中止也不完成)将阻止来自给定Kafka主题的所有读取超过任何未完成的事务。

    2K20

    2023携程面试真题

    Java NIO 的缓冲导向方法略有不同。数据读取到一个它稍后处理的缓冲区,需要时可在缓冲区中前后移动。这就增加了处理过程中的灵活性。但是,还需要检查是否该缓冲区中包含所有您需要处理的数据。...Asynchronous IO(异步 IO):Java NIO 可以让你异步的使用 IO,例如:当线程从通道读取数据到缓冲区时,线程还是可以进行其他事情。当数据被写入到缓冲区时,线程可以继续处理它。...容错的持久方式存储记录消息流: Kafka 会把消息持久化到磁盘,有效避免了消息丢失的风险。 流式处理平台: 在消息发布的时候进行处理,Kafka 提供了一个完整的流式处理类库。...Kafka 将生产者发布的消息发送到 Topic(主题) 中,需要这些消息的消费者可以订阅这些 Topic(主题)。...发送消息的时候指定 key/Partition。 8、Kafka 如何保证消息不丢失?

    21220

    kafka的架构及常见面试题

    三、面试题 1)如何避免kafka消息丢失 1.1)出现消息丢失的原因 从上面架构上来看,kafka丢失消息的原因主要可以分为下面几个场景 Producer在把消息发送给kafka集群时,中间网络出现问题...Consumer在消费消息时发生异常,导致Consumer端消费失败 消费者配置了offset自动提交参数,enable.auto.commit=true。消费者接受到了消息,进行了自动提交。...如果第一步成功,消费者进行消费 当消费者处理完成后,释放分布式锁 如果有一条重复的消息进入,那么在第一步中就会失败,要么是分布式锁,要么是数据库主键冲突 针对没有业务的消息,可以再生产消息的时候给予一个分布式全局...如何在分布式的情况下保证顺序消费 在kafka的broker中,主题下可以设置多个不同的partition,而kafka只能保证Partition中的消息时有序的,但没法保证不同Partition的消息顺序性...增加Partition分区数量,在kafka中,可以设置主题下的Partition,将消息分散至更多的Partition中,配合第一点方案提高整体的消费能力 提高Consumer的消费能力,优化消费者的处理能力

    66220

    Kafka

    主题:消息的种类称为 主题(Topic),可以说一个主题代表了一类消息。相当于是对消息进行分类。主题就像是数据库中的表。...auto.create.topics.enable 默认情况下,kafka 会使用三种方式来自动创建主题,下面是三种情况: 当一个生产者开始往主题写入消息时 当一个消费者开始从主题读取消息时 当任意一个客户端向主题发送元数据请求时...大多数时候,虽然Kafka 会返回 RecordMetadata 消息,但是我们并不需要等待响应。 为了在异步发送消息的同时能够对异常情况进行处理,生产者提供了回掉支持。...应用程序首先需要创建一个 KafkaConsumer 对象,订阅主题并开始接受消息,验证消息并保存结果。一段时间后,生产者往主题写入的速度超过了应用程序验证数据的速度,这时候该如何处理?...另外,当分区被重新分配给另一个消费者时,消息当前的读取状态会丢失,它有可能还需要去刷新缓存,在它重新恢复状态之前会拖慢应用程序。

    37020

    真的,关于 Kafka 入门看这一篇就够了

    主题:消息的种类称为 主题(Topic),可以说一个主题代表了一类消息。相当于是对消息进行分类。主题就像是数据库中的表。...auto.create.topics.enable 默认情况下,kafka 会使用三种方式来自动创建主题,下面是三种情况: 当一个生产者开始往主题写入消息时 当一个消费者开始从主题读取消息时 当任意一个客户端向主题发送元数据请求时...大多数时候,虽然Kafka 会返回 RecordMetadata 消息,但是我们并不需要等待响应。 为了在异步发送消息的同时能够对异常情况进行处理,生产者提供了回掉支持。...应用程序首先需要创建一个 KafkaConsumer 对象,订阅主题并开始接受消息,验证消息并保存结果。一段时间后,生产者往主题写入的速度超过了应用程序验证数据的速度,这时候该如何处理?...另外,当分区被重新分配给另一个消费者时,消息当前的读取状态会丢失,它有可能还需要去刷新缓存,在它重新恢复状态之前会拖慢应用程序。

    1.3K22

    Kafka的存储机制以及可靠性

    Kafka的存储机制以及可靠性 一、kafka的存储机制     kafka通过topic来分主题存放数据,主题内有分区,分区可以有多个副本,分区的内部还细分为若干个segment。     ...所谓的分区其实就是在kafka对应存储目录下创建的文件夹,文件夹的名字是主题名加上分区编号,编号从0开始。...2、读取数据     开始读取指定分区中某个offset对应的数据时,先根据offset和当前分区的所有segment的名称做比较,确定出数据在哪个segment中,再查找该segment的索引文件,确定当前...offset在数据文件中的开始位置,最后从该位置开始读取数据文件,在根据数据格式判断结果,获取完整数据。...自己时,会收到异常表明数据写入失败,此时无法写入数据,保证了数据绝对不丢。

    796110

    学习 Kafka 入门知识看这一篇就够了!(万字长文)

    主题:消息的种类称为 主题(Topic),可以说一个主题代表了一类消息。相当于是对消息进行分类。主题就像是数据库中的表。...auto.create.topics.enable 默认情况下,kafka 会使用三种方式来自动创建主题,下面是三种情况: 当一个生产者开始往主题写入消息时 当一个消费者开始从主题读取消息时 当任意一个客户端向主题发送元数据请求时...大多数时候,虽然Kafka 会返回 RecordMetadata 消息,但是我们并不需要等待响应。 为了在异步发送消息的同时能够对异常情况进行处理,生产者提供了回掉支持。...应用程序首先需要创建一个 KafkaConsumer 对象,订阅主题并开始接受消息,验证消息并保存结果。一段时间后,生产者往主题写入的速度超过了应用程序验证数据的速度,这时候该如何处理?...另外,当分区被重新分配给另一个消费者时,消息当前的读取状态会丢失,它有可能还需要去刷新缓存,在它重新恢复状态之前会拖慢应用程序。

    45.7K1626
    领券