Windows平台整合SpringBoot+KAFKA__第2部分_代码编写前传
开始准备写测试代码
看半天不太懂(我也算是小白级别的,看我搞windows版本的kafka就知道了),
看文档无聊,偶然看到一个KAFKA的windows管理程序,于是就试试就装了一个,感觉那个玩意也比较垃圾,打算不用,突然看到上面可以管理 topic
于是我就当测试了,用这个管理工具删除 我自定义的 test topic 后面操作比较快,我也懒得看结果,反正都是垃圾
中间接了个电话,回来,打算从零开始再弄一个JAVA测试类,心想这些个test topic 也没啥价值,干脆我重启 zookeeper/KAFKA得了;
于是关掉那两个CMD窗口,再启动这两个服务;
zookeeper启动正常;
KAFKA启动不正常,我心想,不是吧,啥玩意啊,这么容易坏??
[2020-01-06 16:38:27,384] TRACE [Broker id=0] Handling stop replica (delete=true) for partition test-0 (state.change.logger)
[2020-01-06 16:38:27,429] ERROR [Broker id=0] Ignoring stop replica (delete=true) for partition test-0 due to storage exception (state.change.logger)
org.apache.kafka.common.errors.KafkaStorageException: Error while renaming dir for test-0 in log dir D:\kafka_2.12-2.4.0\kafka-logs
Caused by: java.nio.file.AccessDeniedException: D:\kafka_2.12-2.4.0\kafka-logs\test-0 -> D:\kafka_2.12-2.4.0\kafka-logs\test-0.a66dcd7640b1444b86fd2d4cbafe30d2-delete
at sun.nio.fs.WindowsException.translateToIOException(WindowsException.java:83)
at sun.nio.fs.WindowsException.rethrowAsIOException(WindowsException.java:97)
at sun.nio.fs.WindowsFileCopy.move(WindowsFileCopy.java:387)
at sun.nio.fs.WindowsFileSystemProvider.move(WindowsFileSystemProvider.java:287)
at java.nio.file.Files.move(Files.java:1395)
at org.apache.kafka.common.utils.Utils.atomicMoveWithFallback(Utils.java:795)
at kafka.log.Log.$anonfun$renameDir$2(Log.scala:966)
at scala.runtime.java8.JFunction0$mcV$sp.apply(JFunction0$mcV$sp.java:23)
at kafka.log.Log.maybeHandleIOException(Log.scala:2316)
at kafka.log.Log.renameDir(Log.scala:964)
at kafka.log.LogManager.asyncDelete(LogManager.scala:925)
at kafka.cluster.Partition.$anonfun$delete$1(Partition.scala:479)
at kafka.utils.CoreUtils$.inLock(CoreUtils.scala:253)
at kafka.utils.CoreUtils$.inWriteLock(CoreUtils.scala:261)
at kafka.cluster.Partition.delete(Partition.scala:470)
at kafka.server.ReplicaManager.stopReplica(ReplicaManager.scala:360)
at kafka.server.ReplicaManager.$anonfun$stopReplicas$2(ReplicaManager.scala:404)
at scala.collection.immutable.Set$Set1.foreach(Set.scala:97)
at kafka.server.ReplicaManager.stopReplicas(ReplicaManager.scala:402)
at kafka.server.KafkaApis.handleStopReplicaRequest(KafkaApis.scala:235)
at kafka.server.KafkaApis.handle(KafkaApis.scala:131)
at kafka.server.KafkaRequestHandler.run(KafkaRequestHandler.scala:70)
at java.lang.Thread.run(Thread.java:745)
Suppressed: java.nio.file.AccessDeniedException: D:\kafka_2.12-2.4.0\kafka-logs\test-0 -> D:\kafka_2.12-2.4.0\kafka-logs\test-0.a66dcd7640b1444b86fd2d4cbafe30d2-delete
at sun.nio.fs.WindowsException.translateToIOException(WindowsException.java:83)
at sun.nio.fs.WindowsException.rethrowAsIOException(WindowsException.java:97)
at sun.nio.fs.WindowsFileCopy.move(WindowsFileCopy.java:301)
at sun.nio.fs.WindowsFileSystemProvider.move(WindowsFileSystemProvider.java:287)
at java.nio.file.Files.move(Files.java:1395)
at org.apache.kafka.common.utils.Utils.atomicMoveWithFallback(Utils.java:792)
... 17 more
删掉日志文件夹中的文件
D:\kafka_2.12-2.4.0\kafka-logs
D:\kafka_2.12-2.4.0\logs
重启KAFKA,还是不行,报错日志一样
头皮有些麻了,我CA,删除完日志,算新部署好啊,不应该啊。
一通操作猛如虎,此处省略一万字,半个小时过去,终于
https://blog.csdn.net/dsjtlmy/article/details/88557324
好吧,试试吧。
删除KAFKA的日志文件,再去zookeeper配置的DATA文件夹,删掉里面的文件;
重启
一切正常;
总结:
忘记了,KAFKA一定是要基于zookeeper的,如果KAFKA有异常,zookeeper要有连带责任的(开个玩笑)
因为是分布式,所以 zookeeper 那边有记录,哪怕kafka这端整个日志都被删除,zookeeper那边都有校验提示的,所以要做,一起都做,否则不过;
Windows平台整合SpringBoot+KAFKA__第2部分_代码编写前传的更多相关文章
- Windows平台整合SpringBoot+KAFKA__第3部分_代码部分(结束)
重要的地方说下,算是给自己提醒,也给阅读者凑合着看看吧: (1)序列化.反序列化: 注意看这个文章 https://www.jianshu.com/p/5da86afed228 很多网上的例子都是 推 ...
- Windows平台整合SpringBoot+KAFKA_第1部分_环境配置部分
项目需要,需要整合 SpringBoot+KAFKA 我调查了一下,发现Linux中,要先装zoomkeeper,再装KAFKA,如 https://blog.csdn.net/zhangcongy ...
- windows平台整合Apache与tomcat
Apache与Tomcat整合的好处 Apache主要用来解析静态文本,如html.Tomcat虽然也有此功能,但Apache效率大大高于Tomcat,尤其是对于并发数较大的企业级应用,能更好的显示A ...
- Windows平台上通过git下载github的开源代码
常见指令整理: (1)检查ssh密钥是否已经存在.GitBash. 查看是否已经有了ssh密钥:cd ~/.ssh.示例中说明已经存在密钥 (2)生成公钥和私钥 $ ssh-keygen -t rsa ...
- Windows平台下使用vs code来调试python代码(2)
背景:上篇文章我们介绍了怎么搭建相关的环境,文章链接:https://www.cnblogs.com/yahuian/p/10507467.html,这篇文章来介绍怎么调试我们的程序. 1.Debug ...
- 【课程分享】ASP.NET MVC5&微信公众平台整合开发实战(响应式布局、JQuery Mobile,Windows Azure、微信核心开发)
对这个课程有兴趣的,能够联系我QQ2748165793 基础知识储备 ASP.NET MVC 5基础(6讲) 第一讲-初识ASP.NET MVC并搭建整合开发环境 第二讲-深入MVC开发模式 第三讲- ...
- RabbitMQ从概念到使用、从Docker安装到RabbitMQ整合Springboot【1.5w字保姆级教学】
@ 目录 一.前言 二.RabbitMQ作用 1. 异步处理 2. 应用解耦 3. 流量控制 三.RabbitMQ概念 1. RabbitMQ简介 2. 核心概念 四.JMS与AMQP比较 五.Rab ...
- 【转】第 02 天:在 Windows 平台必裝的三套 Git 工具
原文网址:https://github.com/doggy8088/Learn-Git-in-30-days/blob/master/docs/02%20%E5%9C%A8%20Windows%20% ...
- 2014年Windows平台软件推荐:神器小工具(骨灰级
原文 http://www.wtoutiao.com/a/120621.html 底层工具 “If you know how to use Process Monitor competently, ...
随机推荐
- dequeueReusableCellWithIdentifier 与 dequeueReusableCellWithIdentifier:forIndexPath 区别
参考:http://stackoverflow.com/questions/25826383/when-to-use-dequeuereusablecellwithidentifier-vs-dequ ...
- Golang 如何交叉编译
Golang 支持交叉编译,即在一个平台上生成另一个平台的可执行程序.方法如下: Mac 下编译 Linux 和 Windows 64位可执行程序 CGO_ENABLED=0 GOOS=linux G ...
- 【快学springboot】12.实现拦截器
前言 之前在[快学springboot]6.WebMvcConfigurer配置静态资源和解决跨域里有用到WebMvcConfigurer接口来实现静态资源的映射和解决跨域请求,并且在文末还说了Web ...
- 【快学springboot】3.多种接受参数的方式
前往掘金查看:https://juejin.im/post/5d05e5f9f265da1b6c5f74b4 前言 在开发中,我们常常会碰到多种传参的方式.这里,我们就来总结下,springboot中 ...
- mybatis注解基础使用
一.创建Maven项目 代码:pom.xml <?xml version="1.0" encoding="UTF-8"?> <projec ...
- [c#]如何访问 JArray 的元素
JArray 格式文件. public void TestJson() { var jsonString = @"{""trends"": [ { & ...
- KVM——虚拟化
KVM——虚拟化 虚拟化是指通过虚拟化技术将一台计算机虚拟为多台逻辑计算机.在一台计算机上同时运行多个逻辑计算机,每个逻辑计算机可运行不同的操作系统,并且应用程序都可以在相互独立的空间内运行而互相 ...
- Spring事务原理分析-部分二
Spring事务原理分析-部分二 说明:这是我在蚂蚁课堂学习了余老师Spring手写框架的课程的一些笔记,部分代码代码会用到余老师的课件代码.这不是广告,是我听了之后觉得很好. 课堂链接:Spring ...
- Django 数据库访问性能优化
使用标准的数据库优化技术: 在进行Django数据库访问性能优化之前,首先应该使用标准的数据库技术对其进行优化,比如给字段加索引,通过使用 django.db.models.Field.db_inde ...
- python列表元组 魔法方法
1.元祖 count() 统计某个字符串的出现次数 tuple.count('22') 返回一个整数 index() 获取某个值出现的位置 2.列表 字符串可以直接转换列表 l ...