当前位置: 首页 > news >正文

做网站怎么做连接点下一个页面企业网站策划流程

做网站怎么做连接点下一个页面,企业网站策划流程,昆明网站seo服务,wordpress使用技巧同步发送 or 异步发送 消息发送根据是否需要处理发送的结果分为同步发送、异步发送。 同步发送:等待发送结果返回,这种方式是可靠的,因为异常能及时处理,但同步发送需要阻塞等待一条消息发送完才处理下一条,吞吐量差。…

同步发送 or 异步发送

       消息发送根据是否需要处理发送的结果分为同步发送、异步发送。

同步发送:等待发送结果返回,这种方式是可靠的,因为异常能及时处理,但同步发送需要阻塞等待一条消息发送完才处理下一条,吞吐量差。


异步发送:发送是异步的,不关心发送的结果,吞吐量最高,但可能存在发送失败的情况。

    本质上kafka 客户端提供的发送接口都是异步的,因为发送接口返回的是一个Future对象。对于同步发送通过future.get获取发送结果。异步发送则忽略send 返回值。

ListenableFuture<SendResult> future = kafkaTemplate.send(topic, content);try {SendResult sendResult = future.get();} catch (InterruptedException e) {e.printStackTrace();} catch (ExecutionException e) {e.printStackTrace();}

发送完成回调

有没有办法既要异步发送还要能处理发送失败的场景,这就是第三种,发送完成时,执行相应的回调方法。这是折中方案,兼顾效率且保证发送失败能被监控到。

producer.send(record, new Callback() {
@Override
public void onCompletion(RecordMetadata recordMetadata, Exception e) {if(e != null){System.out.println("send error ");
}else {System.out.println("send result  topic ="+recordMetadata.topic() + " partition=" + recordMetadata.partition() + "  offset=" + recordMetadata.offset() );
}}
});

发送异常

       有些发送异常可以通过重试几次后解决,比如网络异常,对于有些异常比如消息太大超出kafka配置的最大消息字节数,这类异常重试也会失败,所以这类异常KafkaProducer 不会进行任何重试。对于可重试异常可以配置重试次数

spring.kafka.producer.retries=10

SpringBoot 集成简单介绍

     参考上篇文章SpringBoot 集成配置(pom依赖、application配置),简单讲解SpringBoot 几个重要自动装配类。

KafkaAutoConfiguration

KafkaAutoConfiguration给我们自动配置了几个类

KafkaTemplate:可以通过KafkaTemplate进行发送消息,本质上内部还是使用的KafkaProducer发送消息的。

ProducerFactory:KafkaProducer工厂,通过createProducer()方法可以获取(KafkaProducer) 进行发送消息,避免直接new KafkaProducer

使用方式也很简单,由于直接KafkaAutoConfiguration已经定义了相关Bean, 使用时注入Bean即可

图片

@Autowired
private KafkaTemplate kafkaTemplate;@Autowired
private ProducerFactory producerFactory;

具体代码

同步发送、异步发送的方式直接使用 kafkaTemplate即可完成,同步发送结果处理:这里简单的打印出消息的topic partition offset 等信息如下图

ListenableFuture<SendResult> future = kafkaTemplate.send(topic, content);
SendResult sendResult = future.get();
RecordMetadata recordMetadata = sendResult.getRecordMetadata();
System.out.println("send result  topic ="+recordMetadata.topic() + " partition=" + recordMetadata.partition() + "  offset=" + recordMetadata.offset() );
 

                                   

图片

发送回调kafkaTemplate没有对应api , 需要通过Producer发送,我们通过producerFactory获取。

ProducerRecord record = new ProducerRecord(topic,content);Producer producer = producerFactory.createProducer();producer.send(record, new Callback() {@Overridepublic void onCompletion(RecordMetadata recordMetadata, Exception e) {if(e != null){System.out.println("send error ");}else {System.out.println("send result  topic ="+recordMetadata.topic() + " partition=" + recordMetadata.partition() + "  offset=" + recordMetadata.offset() );}}});

http://www.yayakq.cn/news/451519/

相关文章:

  • 网站什么内容创建全国文明城市黑板报
  • 毕业设计做网站难吗工商网上怎么申请注册公司
  • 微九州合作网站自己做网站维护挣钱吗
  • 做网站编程如何开淘宝店做国外网站
  • 乡镇中心小学校园网站建设指南北京上海网站建设公司哪家好
  • 渭南网站建设推广东莞学校网站建设
  • 成都市住房和城乡建设厅官方网站网站建设的请示
  • 昆明云南微网站制作哪家好wordpress服务本地
  • 多品牌网站建设企业网站视频栏目建设方案
  • 建设网站青岛江阴公司做网站
  • 义乌义亭招工做网站养猪工作wordpress 去掉技术支持
  • 怎么制作微信购物网站网络营销是什么300字
  • @安徽网站建设做网页是什么专业
  • 如何建设国际网站首页网页设计师中级技能要求
  • 深圳市网站建设制作设计平台用cdr做网站设计尺寸要多少
  • 如何做百万格子网站培训网站源码
  • asp网站可运行jsp吗墙内千兆网站怎么做
  • 影视网站seo描述企业查查网官网
  • 网站建设和推广需要多少费用wordpress 访问量
  • 满洲里网站建设网站开发可以自学吗
  • 深圳工信部网站备案免费网站模板怎么做网站
  • 莱州网站建设费用柳州做网站有kv
  • 国外有哪些做服装的网站有哪些征求网站建设意见的通知
  • 做公司网站建设价格低网络广告计费方式
  • 网站怎么做等级保护crm网站下载
  • 电子商城网站建设与维护谷歌网站站长指南
  • 南京市建设档案馆网站莱芜雪野湖简介
  • 加强网站建设的意见上海网站制作哪家好
  • 品牌网站建设信息周浦做网站公司
  • 网站导航建设注意事项国际新闻快报