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

自助网站建设厦门网站制作宣传片视频

自助网站建设厦门网站制作,宣传片视频,网站建设网上商城,做产品封面的网站文章目录 1、生产者监听器1.1、创建生产者监听器1.2、创建生产者拦截器1.3、发送消息测试1.4、使用Java代码创建主题分区副本1.5、application.yml配置----v1版1.6、屏蔽 kafka debug 日志 logback.xml1.7、引入spring-kafka依赖1.8、控制台日志 1、生产者监听器 1.1、创建生产… 文章目录 1、生产者监听器1.1、创建生产者监听器1.2、创建生产者拦截器1.3、发送消息测试1.4、使用Java代码创建主题分区副本1.5、application.yml配置----v1版1.6、屏蔽 kafka debug 日志 logback.xml1.7、引入spring-kafka依赖1.8、控制台日志 1、生产者监听器 1.1、创建生产者监听器 package com.atguigu.kafka.listener; import org.apache.kafka.clients.producer.ProducerRecord; import org.apache.kafka.clients.producer.RecordMetadata; import org.springframework.kafka.support.ProducerListener; Component public class MyKafkaProducerListener implements ProducerListenerString,String {//生产者 ack 配置为 0 只要发送即成功//ack为 1 leader落盘 broker ack之后 才成功//ack为 -1 分区所有副本全部落盘 broker ack之后 才成功Overridepublic void onSuccess(ProducerRecordString, String producerRecord, RecordMetadata recordMetadata) {//ProducerListener.super.onSuccess(producerRecord, recordMetadata);System.out.println(MyKafkaProducerListener消息发送成功topicproducerRecord.topic()partition producerRecord.partition()key producerRecord.key()value producerRecord.value()offset recordMetadata.offset());}//消息发送失败的回调监听器可以接收到发送失败的消息 可以记录失败的消息Overridepublic void onError(ProducerRecordString, String producerRecord, RecordMetadata recordMetadata, Exception exception) {System.out.println(MyKafkaProducerListener消息发送失败topicproducerRecord.topic()partition producerRecord.partition()key producerRecord.key()value producerRecord.value()offset recordMetadata.offset());System.out.println(异常信息 exception.getMessage());} } 1.2、创建生产者拦截器 package com.atguigu.kafka.interceptor; import org.apache.kafka.clients.producer.ProducerInterceptor; import org.apache.kafka.clients.producer.ProducerRecord; import org.apache.kafka.clients.producer.RecordMetadata; import org.springframework.stereotype.Component; import java.util.Map; //拦截器必须手动注册给kafka生产者KafkaTemplate Component public class MyKafkaInterceptor implements ProducerInterceptorString,String {//kafka生产者发送消息前执行拦截发送的消息预处理Overridepublic ProducerRecordString, String onSend(ProducerRecordString, String producerRecord) {System.out.println(生产者即将发送消息topic producerRecord.topic()partition:producerRecord.partition()key producerRecord.key()value producerRecord.value());return null;}//kafka broker 给出应答后执行Overridepublic void onAcknowledgement(RecordMetadata recordMetadata, Exception e) {//exception为空表示消息发送成功if(e null){System.out.println(消息发送成功topic recordMetadata.topic()partition:recordMetadata.partition()offsetrecordMetadata.offset()timestamprecordMetadata.timestamp());}}Overridepublic void close() {}Overridepublic void configure(MapString, ? map) {} } 1.3、发送消息测试 package com.atguigu.kafka.producer;import com.atguigu.kafka.interceptor.MyKafkaInterceptor; import jakarta.annotation.PostConstruct; import jakarta.annotation.Resource; import org.junit.jupiter.api.Test; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.kafka.core.KafkaTemplate; import java.io.IOException;SpringBootTest class KafkaProducerApplicationTests {//装配kafka模板类 springboot启动时会自动根据配置文初始化kafka模板类对象注入到容器中ResourceKafkaTemplate kafkaTemplate;ResourceMyKafkaInterceptor myKafkaInterceptor;PostConstructpublic void init() {kafkaTemplate.setProducerInterceptor(myKafkaInterceptor);}Testvoid contextLoads() throws IOException {kafkaTemplate.send(my_topic1, spring-kafka-生产者监听器);//回调是等kafkaack以后才执行需要阻塞System.in.read();} } 1.4、使用Java代码创建主题分区副本 package com.atguigu.kafka.config; import org.apache.kafka.clients.admin.NewTopic; import org.springframework.context.annotation.Bean; import org.springframework.kafka.config.TopicBuilder; import org.springframework.stereotype.Component; Component public class KafkaTopicConfig {Beanpublic NewTopic myTopic1() {//相同名称的主题 只会创建一次后面创建的主题名称相同配置不同可以做增量更新分区、副本数return TopicBuilder.name(my_topic1)//主题名称.partitions(3)//主题分区.replicas(3)//主题分区副本数.build();//创建} } 1.5、application.yml配置----v1版 server:port: 8110# v1 spring:kafka:bootstrap-servers: 192.168.74.148:9095,192.168.74.148:9096,192.168.74.148:9097producer: # producer 生产者retries: 0 # 重试次数 0表示不重试acks: -1 # 应答级别:多少个分区副本备份完成时向生产者发送ack确认(可选0、1、-1/all)batch-size: 16384 # 批次大小 单位bytebuffer-memory: 33554432 # 生产者缓冲区大小 单位bytekey-serializer: org.apache.kafka.common.serialization.StringSerializer # key的序列化器value-serializer: org.apache.kafka.common.serialization.StringSerializer # value的序列化器 1.6、屏蔽 kafka debug 日志 logback.xml configuration      !-- 如果觉得idea控制台日志太多src\main\resources目录下新建logback.xml 屏蔽kafka debug --logger nameorg.apache.kafka.clients leveldebug / /configuration 1.7、引入spring-kafka依赖 ?xml version1.0 encodingUTF-8? project xmlnshttp://maven.apache.org/POM/4.0.0 xmlns:xsihttp://www.w3.org/2001/XMLSchema-instancexsi:schemaLocationhttp://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsdmodelVersion4.0.0/modelVersionparentgroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-parent/artifactIdversion3.0.5/versionrelativePath/ !-- lookup parent from repository --/parent!-- Generated by https://start.springboot.io --!-- 优质的 spring/boot/data/security/cloud 框架中文文档尽在 https://springdoc.cn --groupIdcom.atguigu.kafka/groupIdartifactIdkafka-producer/artifactIdversion0.0.1-SNAPSHOT/versionnamekafka-producer/namedescriptionkafka-producer/descriptionpropertiesjava.version17/java.version/propertiesdependenciesdependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter/artifactId/dependencydependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-test/artifactIdscopetest/scope/dependencydependencygroupIdorg.springframework.kafka/groupIdartifactIdspring-kafka/artifactId/dependency/dependenciesbuildpluginsplugingroupIdorg.springframework.boot/groupIdartifactIdspring-boot-maven-plugin/artifactId/plugin/plugins/build/project 1.8、控制台日志 生产者即将发送消息topic my_topic1partition:nullkey nullvalue spring-kafka-生产者监听器 消息发送成功topic my_topic1partition:0offset0timestamp1717573749549 MyKafkaProducerListener消息发送成功topicmy_topic1partition nullkey nullvalue spring-kafka-生产者监听器offset 0[[{partition: 0,offset: 0,msg: spring-kafka-生产者监听器,timespan: 1717573749549,date: 2024-06-05 07:49:09}] ]
http://www.w-s-a.com/news/576677/

相关文章:

  • 合肥最好的网站建设网页设计心得体会2000字
  • 西安网站品牌建设门户网站类型
  • 网上做调查问卷的网站请人做网站域名和主机
  • 个人网站模板html5找公司网站建设
  • 找最新游戏做视频网站一个做网站的团队需要哪些人员
  • 威海市做网站的做网站很难吗
  • 广州房地产网站建设方案怎么免费申请网站
  • 免费生成网站软件下载影视公司名字取名
  • 网站公司提供程序免费的网页入口
  • jsp网站开发实例教学房产网站怎么做400电话
  • 网络营销方式及流程广州seo工作
  • 专业商城网站制作免费网页设计成品
  • 韩国优秀设计网站找做网站找那个平台做
  • 贵州省清镇市建设学校网站国家企业信用信息公示系统官网河北
  • 游戏界面设计网站网站建设问一问公司
  • 织梦网站模板如何安装教程视频国外哪些网站可以注册域名
  • 用群晖做网站网站中文名称注册
  • 做一个企业网站需要哪些技术app开发公司名字
  • 网站建设有技术的公司图片在线设计平台
  • 建公司网站的详细步骤关于进一步加强网站建设
  • 丰宁县有做网站的吗?维护一个网站一年多少钱
  • 杭州网站设计渠道wordpress购物主题
  • 山东政务网站建设文字logo免费设计在线生成
  • 韩雪个人网站唐山网络运营推广
  • 查建设工程业绩在哪个网站网站建设优化服务如何
  • 江苏省建设工程安全监督网站商洛网站制作
  • 海淀网站建设wzjs51网页设计页面配色分析
  • 网站的备案流程图垦利网站制作
  • 行业用品网站怎么建设外链买东西的网站都有哪些
  • 淘宝做促销的网站集团门户网站建设策划