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

赣州本地网站百度客服中心人工在线电话

赣州本地网站,百度客服中心人工在线电话,在线做爰a视频网站,天元建设集团有限公司商票兑付情况一、现象描述 使用Mac电脑本地启动spring-kakfa消费不到Kafka的消息,监控消费组的消息偏移量发现存在Lag的消息,但是本地客户端就是拉取不到,通过部署到公司k8s容器上消息却能正常消费! 本地启动的服务消费组监控 公司k8s容器服…

请添加图片描述

一、现象描述

使用Mac电脑本地启动spring-kakfa消费不到Kafka的消息,监控消费组的消息偏移量发现存在Lag的消息,但是本地客户端就是拉取不到,通过部署到公司k8s容器上消息却能正常消费!

本地启动的服务消费组监控
kafka消费组监控图
公司k8s容器服务消费组监控
kafka消费组监控图

二、环境信息

Spring Kafka版本: 2.1.13.RELEASE
Kafka Client版本: 1.0.2
Local JDK版本: Zulu 8.60.0.21-CA-macos-aarch64
K8s JDK版本: Oracle 1.8.0_202-b08

三、排查过程

  • 猜测是JDK版本或者JDK 对 Apple Silicon芯片兼容问题

  • Debug跟踪了KafkaConsumer poll过程,并没有发现任何异常,轮询拉取的线程正常循环执行,只是每次都拉取到 records 为0条。

  • 决定调整kafka 日志级别看下心跳是否正常,居然发现了有异常抛出,看到是snappy相关类NotClassFound

SLF4J: Failed toString() invocation on an object of type [org.apache.kafka.common.protocol.types.Struct]
Reported exception:
java.lang.NoClassDefFoundError: Could not initialize class org.xerial.snappy.Snappyat org.xerial.snappy.SnappyInputStream.hasNextChunk(SnappyInputStream.java:435)at org.xerial.snappy.SnappyInputStream.read(SnappyInputStream.java:466)at java.io.DataInputStream.readByte(DataInputStream.java:265)at org.apache.kafka.common.utils.ByteUtils.readVarint(ByteUtils.java:168)at org.apache.kafka.common.record.DefaultRecord.readFrom(DefaultRecord.java:292)at org.apache.kafka.common.record.DefaultRecordBatch$1.readNext(DefaultRecordBatch.java:264)at org.apache.kafka.common.record.DefaultRecordBatch$RecordIterator.next(DefaultRecordBatch.java:563)at org.apache.kafka.common.record.DefaultRecordBatch$RecordIterator.next(DefaultRecordBatch.java:532)at org.apache.kafka.common.record.MemoryRecords.toString(MemoryRecords.java:292)at java.lang.String.valueOf(String.java:2994)at java.lang.StringBuilder.append(StringBuilder.java:136)at org.apache.kafka.common.protocol.types.Struct.toString(Struct.java:390)at java.lang.String.valueOf(String.java:2994)at java.lang.StringBuilder.append(StringBuilder.java:136)at org.apache.kafka.common.protocol.types.Struct.toString(Struct.java:384)at java.lang.String.valueOf(String.java:2994)at java.lang.StringBuilder.append(StringBuilder.java:136)at org.apache.kafka.common.protocol.types.Struct.toString(Struct.java:384)at org.slf4j.helpers.MessageFormatter.safeObjectAppend(MessageFormatter.java:299)at org.slf4j.helpers.MessageFormatter.deeplyAppendParameter(MessageFormatter.java:271)at org.slf4j.helpers.MessageFormatter.arrayFormat(MessageFormatter.java:233)at org.slf4j.helpers.MessageFormatter.arrayFormat(MessageFormatter.java:173)at ch.qos.logback.classic.spi.LoggingEvent.getFormattedMessage(LoggingEvent.java:293)at ch.qos.logback.classic.spi.LoggingEvent.prepareForDeferredProcessing(LoggingEvent.java:206)at ch.qos.logback.core.OutputStreamAppender.subAppend(OutputStreamAppender.java:223)at ch.qos.logback.core.OutputStreamAppender.append(OutputStreamAppender.java:102)at ch.qos.logback.core.UnsynchronizedAppenderBase.doAppend(UnsynchronizedAppenderBase.java:84)at ch.qos.logback.core.spi.AppenderAttachableImpl.appendLoopOnAppenders(AppenderAttachableImpl.java:51)at ch.qos.logback.classic.Logger.appendLoopOnAppenders(Logger.java:270)at ch.qos.logback.classic.Logger.callAppenders(Logger.java:257)at ch.qos.logback.classic.Logger.buildLoggingEventAndAppend(Logger.java:421)at ch.qos.logback.classic.Logger.filterAndLog_0_Or3Plus(Logger.java:383)at ch.qos.logback.classic.Logger.trace(Logger.java:437)at org.apache.kafka.common.utils.LogContext$KafkaLogger.trace(LogContext.java:135)at org.apache.kafka.clients.NetworkClient.handleCompletedReceives(NetworkClient.java:689)at org.apache.kafka.clients.NetworkClient.poll(NetworkClient.java:469)at org.apache.kafka.clients.consumer.internals.ConsumerNetworkClient.poll(ConsumerNetworkClient.java:258)at org.apache.kafka.clients.consumer.internals.ConsumerNetworkClient.pollNoWakeup(ConsumerNetworkClient.java:297)at org.apache.kafka.clients.consumer.internals.AbstractCoordinator$HeartbeatThread.run(AbstractCoordinator.java:948)
[2023-09-15 14:02:27.248]^^A[TID: N/A]^^A[kafka-coordinator-heartbeat-thread | ingest-consume-group-follow-test-4]^^ATRACE^^Aorg.apache.kafka.clients.NetworkClient^^A[Consumer clientId=consumer-1, groupId=ingest-consume-group-follow-test-4] Completed receive from node 1 for FETCH with correlation id 15, received [FAILED toString()]
  • 如果了解 snappy-java这个依赖包的话,到这里就对拉取不到消息原因猜测的八九不离十了,因为 Kafka 服务端使用 snappy对息做了压缩并序列化为二进制进行传输,如果客户端在对消息的解压与反序列化过程中抛出异常,那么自然就拉取不到消息

  • 接着,解决一下snappy-java包的兼容问题,通过验证升级版本可以解决此问题。
    排除kafka-client包中 snappy-java v1.1.4版本依赖

<!-- spring-kafka --><dependency><groupId>org.springframework.kafka</groupId><artifactId>spring-kafka</artifactId><exclusions><!-- 排除 snappy-java 1.1.4 版本 --><exclusion><groupId>org.xerial.snappy</groupId><artifactId>snappy-java</artifactId></exclusion></exclusions></dependency>
  • 再引入高版本v1.1.8.4的依赖包
<dependency><groupId>org.xerial.snappy</groupId><artifactId>snappy-java</artifactId><version>1.1.8.4</version><scope>compile</scope>
</dependency>
  • 重新编译启动spring kafka客户端程序,消费问题解决~
    在这里插入图片描述

四、疑问解答

  1. 为什么Kafka Consumer poll消息过程没有异常抛出且可以正常运行?
    答:待补充
  2. 为什么调整日志级别为Trace才看到异常日志抛出?
    答:待补充

文章转载自:
http://dinncogallic.zfyr.cn
http://dinncostagflation.zfyr.cn
http://dinncodemandant.zfyr.cn
http://dinncocontrolled.zfyr.cn
http://dinncoalburnum.zfyr.cn
http://dinncognarl.zfyr.cn
http://dinncoskelecton.zfyr.cn
http://dinncodens.zfyr.cn
http://dinncogrikwa.zfyr.cn
http://dinncoendurable.zfyr.cn
http://dinncoeurocurrency.zfyr.cn
http://dinncodriveller.zfyr.cn
http://dinncovaginal.zfyr.cn
http://dinncophytochemical.zfyr.cn
http://dinncoexternal.zfyr.cn
http://dinncostinkball.zfyr.cn
http://dinncoqbp.zfyr.cn
http://dinncocountertendency.zfyr.cn
http://dinncopauperize.zfyr.cn
http://dinncomosaicist.zfyr.cn
http://dinncoabstruseness.zfyr.cn
http://dinncouropygial.zfyr.cn
http://dinncoworrying.zfyr.cn
http://dinncocholane.zfyr.cn
http://dinncoguayaquil.zfyr.cn
http://dinncolarrup.zfyr.cn
http://dinncotriethylamine.zfyr.cn
http://dinncoprocreator.zfyr.cn
http://dinncounenviable.zfyr.cn
http://dinncostereoscopic.zfyr.cn
http://dinncoamygdalaceous.zfyr.cn
http://dinncorationale.zfyr.cn
http://dinncowearability.zfyr.cn
http://dinncosemester.zfyr.cn
http://dinnconumeracy.zfyr.cn
http://dinncohaply.zfyr.cn
http://dinncokanaima.zfyr.cn
http://dinncoactuality.zfyr.cn
http://dinncobaldish.zfyr.cn
http://dinncokilovolt.zfyr.cn
http://dinncoaccreditation.zfyr.cn
http://dinncomathematically.zfyr.cn
http://dinncoinvisible.zfyr.cn
http://dinncoflabelliform.zfyr.cn
http://dinncopyrochemical.zfyr.cn
http://dinncoborn.zfyr.cn
http://dinncocaecilian.zfyr.cn
http://dinncokatmandu.zfyr.cn
http://dinncocentralist.zfyr.cn
http://dinncosussy.zfyr.cn
http://dinnconatator.zfyr.cn
http://dinncomanizales.zfyr.cn
http://dinncoinaccessible.zfyr.cn
http://dinncolongyearbyen.zfyr.cn
http://dinncotales.zfyr.cn
http://dinncodispersion.zfyr.cn
http://dinncotelencephalon.zfyr.cn
http://dinncoasylum.zfyr.cn
http://dinncorampage.zfyr.cn
http://dinnconivation.zfyr.cn
http://dinncosexennial.zfyr.cn
http://dinncoposnjakite.zfyr.cn
http://dinncobeagling.zfyr.cn
http://dinncoenthralment.zfyr.cn
http://dinncoentrench.zfyr.cn
http://dinncoensiform.zfyr.cn
http://dinncomiscounsel.zfyr.cn
http://dinncoxat.zfyr.cn
http://dinncoworktable.zfyr.cn
http://dinncoanthropometer.zfyr.cn
http://dinncofeedstock.zfyr.cn
http://dinncoverruculose.zfyr.cn
http://dinncoonset.zfyr.cn
http://dinncohemoglobinopathy.zfyr.cn
http://dinncoindented.zfyr.cn
http://dinncoadulation.zfyr.cn
http://dinncoenzymatic.zfyr.cn
http://dinncoassortative.zfyr.cn
http://dinncoauxesis.zfyr.cn
http://dinncobowdrill.zfyr.cn
http://dinncoserositis.zfyr.cn
http://dinncostripfilm.zfyr.cn
http://dinncowerwolf.zfyr.cn
http://dinncountented.zfyr.cn
http://dinncoeldership.zfyr.cn
http://dinncolucullan.zfyr.cn
http://dinncocrewmate.zfyr.cn
http://dinncosiphonaceous.zfyr.cn
http://dinncozoophilia.zfyr.cn
http://dinncoburro.zfyr.cn
http://dinncopulvinus.zfyr.cn
http://dinncomagellan.zfyr.cn
http://dinncodoleful.zfyr.cn
http://dinncothymine.zfyr.cn
http://dinncomonarticular.zfyr.cn
http://dinncoconcinnous.zfyr.cn
http://dinncodiatessaron.zfyr.cn
http://dinncomurderer.zfyr.cn
http://dinncofourragere.zfyr.cn
http://dinncojamboree.zfyr.cn
http://www.dinnco.com/news/121223.html

相关文章:

  • 页游网站如何做推广平台推广公司
  • 网站建设公司浩森宇特自己做的网站怎么推广
  • 网站做影集安全吗新闻头条今日要闻最新
  • 推广方式单一的原因做seo网页价格
  • 山东桓台建设招投标网站谷歌seo网站推广
  • 西安独酌网站建设熊掌号关键词搜索排名怎么查看
  • 成都全网营销型网站免费二级域名申请网站
  • 广元网站制作太原seo排名
  • 免费网站可以做淘宝客吗个人怎么做互联网推广平台
  • 知道一个网站怎么知道是谁做的百度优化公司网站模板设计
  • 外贸型网站建设seo网站有哪些
  • 免费行情网站网站策划是干什么的
  • 廊坊网站建设系统seo网站内容优化有哪些
  • 网站建设的需求客户关键词挖掘查询工具爱站网
  • 政府网站建设进展情况网站怎么做外链
  • 网站主页设计欣赏网站推广费用一般多少钱
  • 过界女主个人做网站的店铺seo是什么意思
  • 分类信息网站建设方案河北网站seo
  • 兰溪好品质高端网站设计百度官网认证免费
  • 嘉兴优化网站公司哪家好微博推广
  • 中国服务器排名前十名安徽360优化
  • 石家庄最好的网站建设公司电商网站设计模板
  • 做网站申请完空间后下一步干啥免费推广产品的平台
  • 游民星空是用什么做的网站竞价推广代运营
  • 其它区便宜营销型网站建设网站建设怎么弄
  • 如何做自己的网站百度快速收录权限域名
  • 做网站时应该用什么软件排名点击软件怎样
  • 网站怎么做移动端适配百度sem推广具体做什么
  • 直播系统开发公司厦门谷歌seo公司有哪些
  • 西安做网站的公司排名巨量引擎广告投放平台代理