公司建设一个网站需要多少钱,wordpress 目录表插件,yandex网站推广,网站添加内容Kafka的ACK配置含义详解
Kafka producer有三种ack机制 初始化producer时在config中进行配置#xff1b;
参数-1,0,1分别代表什么含义
ack等于0#xff1a;
含义
意味着producer不等待broker同步完成的确认#xff0c;只要继续发送下一条(批)信息
优缺点
提供了最低的…Kafka的ACK配置含义详解
Kafka producer有三种ack机制 初始化producer时在config中进行配置
参数-1,0,1分别代表什么含义
ack等于0
含义
意味着producer不等待broker同步完成的确认只要继续发送下一条(批)信息
优缺点
提供了最低的延迟。但是最弱的持久性当服务器发生故障时就很可能发生数据丢失。例如leader已经死亡producer不知情还会继续发送消息broker接收不到数据就会数据丢失。
ack等于1默认
含义
意味着producer要等待leader成功收到数据并得到确认才发送下一条message。
优缺点
此选项提供了较好的持久性较低的延迟性。
如果leader成功写入后还没来得及把数据同步到follower节点就挂了这时候消息就丢失了。
ack等于-1
含义
意味着producer只有收到分区内所有副本的成功写入的通知才认为推送消息成功
优缺点
持久性最好延时性最差。
三者优先级及可靠性
0,1-1三种机制 性能递减可靠性递增
如何保证宕机的时候数据不丢失的
如何保证宕机的时候数据不丢失采用了多副本冗余的高可用机制。
在kafka集群中每个Partition都有多个副本其中一个副本叫做leader其他的副本叫做follower。
假设一个Topic拆分为了3个Partition分别是Partition0Partiton1Partition2此时每个Partition都有2个副本。
比如Partition0有一个副本是Leader另外一个副本是FollowerLeader和Follower两个副本是分布在不同机器上的。
#创建3个分区三个副本的topic
./kafka-topics.sh --create --zookeeper-server kafka1-ip:2181,kafka2-ip:2181,kafka3-ip:2181, --replication-factor 3 --partitions 3 --topic topicname这样的多副本冗余机制可以保证任何一台机器挂掉都不会导致数据彻底丢失因为起码还是有副本在别的机器上的。