Kafka系列2:深入理解Kafka生产者( 七 )
对于吞吐量要求比较高的应用来说 , 又要同时保证服务的可靠性 , 发送并忘记方式可靠性较低 , 但同步发送方式又会降低吞吐量 , 这就需要异步发送消息的方式了 。 大多数时候 , 生产者并不需要等待响应 , 只需要在遇到消息发送失败时 , 抛出异常、记录错误日志 , 或者把消息写入“错误日志”文件便于以后分析 。 代码样例如下:
ProducerRecord<String String> record = new ProducerRecord<>(\"Topic\" \"k\" \"v\");
// 异步发送消息 , 并监听回调
producer.send(record new Callback() { // 1
@Override
public void onCompletion(RecordMetadata metadata Exception exception) { // 2
if (exception != null) {
// 进行异常处理
else {
System.out.printf(\"topic=%s partition=%d offset=%s \\n\" metadata.topic() metadata.partition() metadata.offset());
);
-
从上面代码可以看到 , 为了使用回调 , 只需要实现一个org.apache.kafka.clients.producer.Callback接口即可 , 这个接口只有一个onComplete方法 。
推荐阅读
- |阴阳哲学探索系列之一百零八十四(以组织层级为例)
- 使命召唤手游|整个仙剑系列,修仙的角色一抓一大把,但真正成仙的又有哪些呢?
- 世界观|《真.女神转生V》系列回顾与测评:奇幻世界,现代视角,与魔为伴
- 皮卡丘|庆祝《宝可梦》系列25周年,官方推限量25尊「水晶皮卡丘」
- 大话西游2|大话西游2:这么全面的万金油神兽从鎏金宝鉴系列里可以说是”大哥“的存在了!
- |LOLM神龙和光明哨兵,哪个系列皮肤更受欢迎?玩家:主要看价格
- 开罗|《Let's Build a Zoo》No More Robots 系列新作,开罗向游戏上架steam
- |新作只排第四! 《银河战士》系列排名TOP10
- 炉石传说|炉石传说:迷你系列,1费新卡快攻德质变,胜率最高直逼最强卡组
- iqoo8|游戏表现“天花板”非它莫属!KPL选手同款的iQOO 8系列