Kafka系列2:深入理解Kafka生产者( 六 )
发送消息时 , 生产者可能会出现一些执行异常 , 序列化消息失败异常、缓冲区超出异常、超时异常 , 或者发送线程被中断异常 。
同步发送
在上一种发送方式中已经解释过同步发送和只发送的区别 , 以下是最简单的同步发送方式的代码样例 , 对比可以看到区别:
ProducerRecord<String String> record = new ProducerRecord<>(\"Topic\" \"k\" \"v\");
try {
producer.send(record).get;
catch (Exception e) {
e.printStackTrace();
可以看到 , 二者的区别就在于是否接收发送结果 。 同步发送会接收send()方法的返回值 , 即一个Future对象 , 通过调用Future对象的get()方法来等待Kafka响应 。 如果服务器返回错误 , 则get()方法就会抛出异常 。 如果没有发生错误 , 我们会得到一个RecordMetadata对象 , 可以用它来获取消息的偏移量 。
异步发送消息
推荐阅读
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- |阴阳哲学探索系列之一百零八十四(以组织层级为例)
- 使命召唤手游|整个仙剑系列,修仙的角色一抓一大把,但真正成仙的又有哪些呢?
- 世界观|《真.女神转生V》系列回顾与测评:奇幻世界,现代视角,与魔为伴
- 皮卡丘|庆祝《宝可梦》系列25周年,官方推限量25尊「水晶皮卡丘」
- 大话西游2|大话西游2:这么全面的万金油神兽从鎏金宝鉴系列里可以说是”大哥“的存在了!
- |LOLM神龙和光明哨兵,哪个系列皮肤更受欢迎?玩家:主要看价格
- 开罗|《Let's Build a Zoo》No More Robots 系列新作,开罗向游戏上架steam
- |新作只排第四! 《银河战士》系列排名TOP10
- 炉石传说|炉石传说:迷你系列,1费新卡快攻德质变,胜率最高直逼最强卡组
- iqoo8|游戏表现“天花板”非它莫属!KPL选手同款的iQOO 8系列