开始准备写测试代码

看半天不太懂(我也算是小白级别的,看我搞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部分_代码编写前传的更多相关文章

  1. Windows平台整合SpringBoot+KAFKA__第3部分_代码部分(结束)

    重要的地方说下,算是给自己提醒,也给阅读者凑合着看看吧: (1)序列化.反序列化: 注意看这个文章 https://www.jianshu.com/p/5da86afed228 很多网上的例子都是 推 ...

  2. Windows平台整合SpringBoot+KAFKA_第1部分_环境配置部分

    项目需要,需要整合 SpringBoot+KAFKA 我调查了一下,发现Linux中,要先装zoomkeeper,再装KAFKA,如  https://blog.csdn.net/zhangcongy ...

  3. windows平台整合Apache与tomcat

    Apache与Tomcat整合的好处 Apache主要用来解析静态文本,如html.Tomcat虽然也有此功能,但Apache效率大大高于Tomcat,尤其是对于并发数较大的企业级应用,能更好的显示A ...

  4. Windows平台上通过git下载github的开源代码

    常见指令整理: (1)检查ssh密钥是否已经存在.GitBash. 查看是否已经有了ssh密钥:cd ~/.ssh.示例中说明已经存在密钥 (2)生成公钥和私钥 $ ssh-keygen -t rsa ...

  5. Windows平台下使用vs code来调试python代码(2)

    背景:上篇文章我们介绍了怎么搭建相关的环境,文章链接:https://www.cnblogs.com/yahuian/p/10507467.html,这篇文章来介绍怎么调试我们的程序. 1.Debug ...

  6. 【课程分享】ASP.NET MVC5&微信公众平台整合开发实战(响应式布局、JQuery Mobile,Windows Azure、微信核心开发)

    对这个课程有兴趣的,能够联系我QQ2748165793 基础知识储备 ASP.NET MVC 5基础(6讲) 第一讲-初识ASP.NET MVC并搭建整合开发环境 第二讲-深入MVC开发模式 第三讲- ...

  7. RabbitMQ从概念到使用、从Docker安装到RabbitMQ整合Springboot【1.5w字保姆级教学】

    @ 目录 一.前言 二.RabbitMQ作用 1. 异步处理 2. 应用解耦 3. 流量控制 三.RabbitMQ概念 1. RabbitMQ简介 2. 核心概念 四.JMS与AMQP比较 五.Rab ...

  8. 【转】第 02 天:在 Windows 平台必裝的三套 Git 工具

    原文网址:https://github.com/doggy8088/Learn-Git-in-30-days/blob/master/docs/02%20%E5%9C%A8%20Windows%20% ...

  9. 2014年Windows平台软件推荐:神器小工具(骨灰级

    原文  http://www.wtoutiao.com/a/120621.html 底层工具 “If you know how to use Process Monitor competently, ...

随机推荐

  1. iis下发布MVC网站

    1.首先检查有没有安装iis,没有的话先安装iis 2. 3.选择应用程序池的时候看有没有asp.net 4.0 如果没有先安装. 首先以管理员身份打开“运行”输入cd C:\Windows\Micr ...

  2. python用户界面编程和文件转换为exe文件

    python用户界面编程学习代码如下所示: #python用户图形界面编程实现import sys #简单用户图形界面实现from PyQt5.QtWidgets import QApplicatio ...

  3. HBase基准测试

    执行命令: hbase org.apache.hadoop.hbase.PerformanceEvaluation 返回信息: [root@node1 /]# hbase org.apache.had ...

  4. CH8 课后习题

    8.1和8.2 #include <iostream> using namespace std; istream& f(istream& in) { int v; in & ...

  5. Centos7 下vmware NAT模式配置网络连接与DNS

    NAT模式配置网络 1.首先查看NAT模式下的网络 从这边可以知道我的vmware下的nat模式的网络是192.168.109.*网段 上图这个网段也可以修改为别的网段 2.NAT模式下的网关 3.配 ...

  6. 防火墙、WAF、IPS、IDS都是什么

    防火墙 (Firewall) 别名防护墙,于1993发明并引入国际互联网. 他是一项信息安全的防护系统,依照特定的规则,允许或是限制传输的数据通过.在网络中,所谓的防火墙是指一种将内网和外网分开的方法 ...

  7. java实现在线预览 - -之poi实现word、excel、ppt转html

    简介 java实现在线预览功能是一个大家在工作中也许会遇到的需求,如果公司有钱,直接使用付费的第三方软件或者云在线预览服务就可以了,例如永中office.office web 365(http://w ...

  8. 三 PrePareStatement注入,DELETE和TRUNCATE

    PreparedStatement PreparedStatement是一个接口,它继承了Statement,该接口有以下几个优点: 性能比Statement高,会把sql预编译 可以解决sql注入问 ...

  9. mysql8 my.ini

    [mysqld] ; 设置3306端口 port= ; 设置mysql的安装目录 basedir=D:/wamp64/bin/mysql/mysql8.0.11 ; 设置mysql数据库的数据的存放目 ...

  10. List<string>绑定到DataGridView控件

    问题 将一个简单的List<string>作为数据源绑定到 DataGridView myDataGridView.DataSource = myStringList; 但是只得到一个名为 ...