开发者社区> 问答> 正文

Flink kafka Producer的容错是什么?

Flink kafka Producer的容错是什么?

展开
收起
游客qzzytmszf3zhq 2021-12-07 20:20:18 362 0
1 条回答
写回答
取消 提交回答
  • Flink kafka 09、010版本下,通过setLogFailuresOnly为false,setFlushOnCheckpoint为true,能达到at-least-once语义。setLogFailuresOnly,默认为false,是控制写kafka失败时,是否只打印失败的log不抛异常让作业停止。setFlushOnCheckpoint,默认为true,是控制是否在checkpoint时fluse数据到kafka,保证数据已经写到kafka。否则数据有可能还缓存在kafka 客户端的buffer中,并没有真正写出到kafka,此时作业挂掉数据即丢失,不能做到至少一次的语义。

    Flink kafka 011版本下,通过两阶段提交的sink结合kafka事务的功能,可以保证端到端精准一次。详细原理可以参考:https://www.ververica.com/blog/end-to-end-exactly-once-processing-apache-flink-apache-kafka。

    2021-12-07 20:20:30
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
Java Spring Boot开发实战系列课程【第16讲】:Spring Boot 2.0 实战Apache Kafka百万级高并发消息中间件与原理解析 立即下载
MaxCompute技术公开课第四季 之 如何将Kafka数据同步至MaxCompute 立即下载
消息队列kafka介绍 立即下载