北京网站平台开发,合伙合同网站建设协议,网站制作评价,建设一个网站的流程图前言
这次的学习过程来历有点奇怪。我本来是学习kafka过程中正常的学到了这个acks机制#xff0c;但是发现很多地方写的都不太明白。因此决定还是自己来看一下源码。
具体来说#xff1a;请看搜索结果#xff08;Google引擎#xff09; 这个是搜索“Kafka的ack”所得到的…前言
这次的学习过程来历有点奇怪。我本来是学习kafka过程中正常的学到了这个acks机制但是发现很多地方写的都不太明白。因此决定还是自己来看一下源码。
具体来说请看搜索结果Google引擎 这个是搜索“Kafka的ack”所得到的结果。
第一条是直接转载的其他地方。并且只是说了0 1 -1至于这个是什么看完还是懵逼。 第二条看起来清晰了许多感觉总结的也很精辟… 第三条是完全复制的第二条。
第四条是黑马的网站其中给到了一个举例… 问题出在了第五条来自火山引擎的介绍页 本觉得是最权威的结果是不确保真实性的ai答案…而且其中出现了与其他地方描述不一致的这里说acks是出现在消费者那边的。
甚至于如果搜“kafka的ack机制”那么—— acks机制源码
其实这个源码也没多少毕竟只是发送机制中的一个小的参数。在kafka、sender部分中。 https://github.com/apache/kafka/blob/trunk/clients/src/main/java/org/apache/kafka/clients/producer/internals/Sender.java
其中关于acks的定义如下 /* the number of acknowledgements to request from the server */private final short acks;在代码的644行部分是acks 0的情况。 // this is the acks 0 case, just complete all requestsfor (ProducerBatch batch : batches.values()) {completeBatch(batch, new ProduceResponse.PartitionResponse(Errors.NONE), correlationId, now, null);}在918行部分是acks ! 0 的情况表示期望获取服务端响应。 ClientRequest clientRequest client.newClientRequest(nodeId, requestBuilder, now, acks ! 0,requestTimeoutMs, callback);acks机制功能
很显然就是网上那样… acks机制producer的消息发送确认机制用于防止消息的丢失。
具体参考此文https://blog.csdn.net/qq_32445015/article/details/123006365
后记
搜索kafka的ack和kafka的ack机制搜出来的结果都是垃圾。。。 但如果搜索kafka的ack机制源码还是能搜到不少宝贝。 更加深入透彻的理解了——学习要以源码为准这句话。 还有就说发现文章是ai生成的那就可以直接润了。看你的ai文那我何不自己去问gpt呢。