Advertisement

Kafka生产者确保可靠的数据传输

阅读量:

Kafka是一种典型的MQ实现方案,大多数MQ系统都会遇到消息丢失的问题,导致消息丢失的原因多种多样,例如

  1. 生产者发送了信息给系统,并未保证该信息能成功传输至MQ中
  2. MQ接收到了信息然而未能成功送达

本文实验采用的Kafka是kafka_2.11-1.1.1版本

Kafka发送消息模型

考虑到存在一个Topic, 该系统中num.partitions的值设为1, 该系统的replication.factor参数设置为2.

简单发送消息模型

在Kafka系统中,Producer需要将消息分布至多个partitions以确保负载均衡;然而,在本主题中由于仅包含一个分区的存在性问题。因此消息将被限定向内发送。

Note: 在Kafka中,生产者与消费者只与Partition leader 交互.

当ack=0时

生产者专注于将数据发送至Kafka中,而对Kafka是否成功接收数据并不在意. 这样会导致数据丢失的概率相对较高.

复制代码
    Properties props = new Properties();
    props.put(P

全部评论 (0)

还没有任何评论哟~