springboot第82集:消息队列kafka,kafka-map

官网下载链接:https://kafka.[apache].org/downloads

我下载的是[Scala]2.12 - kafka_2.12-3.1.0.tgz

kafka只需要解压下载的压缩包就行了,我这里解压的路径是D:\kafka_2.12-3.1.0,kafka的运行需要依赖zookeeper,当前版本已经内置了zookeeper,所以不需要再安装zookeeper。

kafka配置

kafka 服务端配置在server.properties中。

kafka

  • kafka 服务端配置在server.properties中。

  • kafka配置需要修改两处配置文件:listeners 和 log.dirs

  • listeners=PLAINTEXT://localhost:9092

  • log.dirs=D:/kafka_2.12-3.1.0/logs

  • zookeeper配置

  • zookeeper配置文件为zookeeper.properties,只需修改一处,

  • dataDir:zookeeper存储数据的路径

  • dataDir=D:/kafka_2.12-3.1.0/data

  • 先启动zookeeper,启动命令如下:

  • .\bin\windows\zookeeper-server-start.bat .\config\zookeeper.properties

  • 启动kafka-server

  • .\bin\windows\kafka-server-start.bat .\config\server.properties

  • 如果启动kafka失败,并出现以下异常,删除logs文件夹下的meta.properties文件即可。

  • 启动kafka-topics

  • 创建一个名为test的topic

  • .\bin\windows\kafka-topics.bat --create --bootstrap-server  localhost:2181 --replication-factor 1 --partitions 1 --topic test

  • 启动生产者

  • 命令如下:

  • .\bin\windows\kafka-console-producer.bat --broker-list localhost:9092 --topic test

  • 启动消费者

  • 命令如下:

  • .\bin\windows\kafka-console-consumer.bat --bootstrap-server localhost:9092 --topic test

启动Kafka服务

注意:您的本地环境必须[安装Java 8]。

  • 配置Zookeeper环境变量

  • 配置ZOOKEEPER_HOME:

  • 在系统环境变量Path中,增加“%ZOOKEEPER_HOME%\bin”

  • 按: windows+r, 输入cmd, 打开dos窗口,输入命令:

  • zkServer

  • 编辑broker.id=1。 配置broker.id必须是一个整数,且不可以和其他的kafak代理节点的值重复,即每个kafka节点为一个broker,拥有唯一的id值

集群配置:

  • 新生成几个配置文件config/server1.properties、config/server2.properties。

  • 然后修改里面的配置文件broker.id、 log.dir、  listeners分别指定不同的broker、日志文件位置监听端口。

    config/server1.properties:broker.id=1listeners=PLAINTEXT://:8083log.dir= E:/tool/kafka/kafka2.12/kafkaLogs1config/server2.properties:broker.id=2listeners=PLAINTEXT://:8085log.dir= E:/tool/kafka/kafka2.12/kafkaLogs2

启动Kafka

.\bin\windows\kafka-server-start.bat  .\config\server.properties

创建主题

.\bin\windows\kafka-topics.bat --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic yantopic

查看现有的主题

.\bin\windows\kafka-topics.bat --list --zookeeper localhost:2181

启动生产者,可以发送消息:

打开dos窗口,输入命令:

.\bin\windows\kafka-console-producer.bat --broker-list localhost:9092 --topic test

接收消息

窗口不要关闭,同上新打开一个shell窗口,输入命令:

.\bin\windows\kafka-console-consumer.bat --bootstrap-server localhost:9092 --topic test --from-beginning

如果您的 Nacos 本地启动没有设置账号密码,那么在 Java 客户端连接时也不需要指定账号和密码。您可以直接使用不带认证信息的配置连接到 Nacos 服务。

不过,如果在 Nacos 服务器中开启了身份认证(默认账户为 nacos/nacos),那就需要在 Java 客户端代码中配置用户名和密码。例如,在 NacosConfigProperties 或者客户端配置中添加账号信息。

在不需要账号密码的情况下,Java 客户端连接代码可以保持简单,例如:

Properties properties = new Properties();
properties.put("serverAddr", "localhost:8848");  // 连接到本地的 Nacos
ConfigService configService = NacosFactory.createConfigService(properties);

kafka map是使用Java11React开发的一款kafka可视化工具。

目前支持的功能有:

  • 多集群管理

  • 集群状态监控(分区数量、副本数量、存储大小、offset)

  • 主题创建、删除、扩容(删除需配置delete.topic.enable = true)

  • broker状态监控

  • 消费者组查看、删除

  • 重置offset

  • 消息查询(支持String和json方式展示)

  • 发送消息(支持向指定的topic和partition发送字符串消息)

    • 打开 系统属性 > 高级系统设置 > 环境变量

    • 找到或新建 JAVA_HOME 变量,设置为 JDK 11 的安装路径。

    • 确保系统的 JAVA_HOME 环境变量指向新安装的 Java 11 或更高版本的 JDK 目录。例如,如果你安装了 Java 11,路径可能是 C:\Program Files\Java\jdk-11.

    • 在 Windows 中,你可以通过以下步骤设置环境变量:

  • 更新 PATH 变量

    • %JAVA_HOME%\bin 添加到 PATH 环境变量的开头,以确保命令行和程序优先使用 Java 11 的运行环境。

  • Nacos 配置文件中缺少对应的属性application-prod.yml 或其他共享配置文件中没有定义 sys.datasource.url

  • Nacos 连接不成功:如果 Nacos 连接不成功,Spring Boot 将无法加载远程配置文件。

要在 Windows 上启动 Kafka Manager(即 Kafka Map)并确保使用指定的 JDK 版本(如 JDK 11),你可以通过以下步骤实现。

1. 设置 JDK 11 路径并切换到 Kafka Manager 目录

首先,确保 JDK 11 已安装并记下其安装目录路径(例如:C:\Program Files\Java\jdk-11)。

2. 启动 Kafka Manager 并指定 JDK 版本

  1. 打开命令提示符

  • Win + R,输入 cmd 并回车。

设置 JAVA_HOME: 设置 JAVA_HOME 环境变量以指向 JDK 11 路径。

  • set JAVA_HOME=C:\Program Files\Java\jdk-11
  • 添加 JDK 11 的 bin 目录到 PATH: 将 JAVA_HOME\bin 添加到当前命令行会话的 PATH 环境变量中,这样你就可以确保使用 JDK 11 启动 Kafka Manager。

    set PATH=%JAVA_HOME%\bin;%PATH%
  • 切换到 Kafka Manager 安装目录: 进入 Kafka Manager 的安装目录,例如 D:\kafka-manager

    cd D:\kafka-manager
  • 启动 Kafka Manager: 运行以下命令来启动 Kafka Manager:

    .\bin\cmak -Dconfig.file=conf/application.conf -Dhttp.port=9000
    • -Dconfig.file=conf/application.conf:指定配置文件路径。

    • -Dhttp.port=9000:指定 HTTP 端口(可以根据需要更改端口)。


自动安装必备工具。注意,这也将安装Chocolatey。安装完成后,脚本将在一个新窗口中弹出

在 Windows 中:

如果你通过安装包安装了 Yarn,但仍然无法使用它,可以检查环境变量是否设置正确。

  1. 打开 系统属性高级系统设置环境变量

  2. 在系统变量中,找到 Path,点击 编辑

  3. 确保 Yarn 安装路径(通常在 C:\Program Files (x86)\Yarn\binC:\Users<YourName>\AppData\Local\Yarn\bin)已经添加到 Path 中。

  4. 保存并关闭所有窗口,重新启动命令提示符。

1. 原因分析

日志中的核心错误:
  1. 文件被占用

    java.nio.file.FileSystemException: ... 另一个程序正在使用此文件,进程无法访问。

    表示文件被其他程序占用,Kafka 无法完成操作。

  2. 日志目录失败

    ERROR Shutdown broker because all log dirs in D:\software\kafka\logs have failed

    表示 Kafka 的日志目录不可用,可能由于文件占用、权限问题或磁盘故障。

启动

  1. 启动cassandra,到下载目录下bin下,cmd,cassandra.bat

  2. 启动nacos,到下载目录下bin下,cmd,startup.cmd -m standalone

  3. D盘,启动elasticsearch的bin目录下,elasticsearch

  4. D盘,启动kibana,bin目录下,kibana.bat

  5. zookeeper,D 盘,kafka目录下

  6. .\bin\windows\zookeeper-server-start.bat .\config\zookeeper.properties

  7. .\bin\windows\kafka-server-start.bat .\config\server.properties

加群联系作者vx:xiaoda0423

仓库地址:https://github.com/webVueBlog/JavaGuideInterview

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/473932.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

使用IDE实现java端远程调试功能

使用IDE实现java端远程调试功能 1. 整体描述2. 前期准备3. 具体操作3.1 修改启动命令3.2 IDE配置3.3 打断点3.4 运行Debug 4. 总结 1. 整体描述 在做项目时&#xff0c;有些时候&#xff0c;需要和第三方进行调式&#xff0c;但是第三方不在一起&#xff0c;需要进行远程调试&…

蜀道山CTF<最高的山最长的河>出题记录

出这道题的最开始感觉就是,因为现在逆向的形式好多,我最开始学习的时候,经常因为很多工具,或者手段完全不知道,就很懵逼,很多师傅都出了各种类型的,我就想着给以前的"自己"出一道正常exe,慢慢调的题,为了不那么简单,我就选择了C(究极混淆,可能比rust好点),让大家无聊…

Quartus+Nios II for eclipse问题合集

由于对于FPGANIOS II 的工作需要&#xff0c;对工作过程中遇到的问题进行记录&#xff0c;持续更新。 1、BSP directory does not exist: . Stop.Nios II使用过程中遇到的一些问题2_error executing nios2-bsp-generate-files --bsp-di-CSDN博客https://blog.csdn.net/qq_39485…

AWTK VSCode 实时预览插件端口冲突的解决办法

AWTK XML UI 预览插件&#xff1a;在 vscode 中实时预览 AWTK XML UI 文件&#xff0c;在 Copilot 的帮助下&#xff0c;可以大幅提高界面的开发效率。 主要特色&#xff1a; 真实的 UI 效果。可以设置主题&#xff0c;方便查看在不同主题下界面的效果。可以设置语言&#xf…

开源项目低代码表单设计器FcDesigner获取表单的层级结构与组件数据

在使用开源项目低代码表单设计器FcDesigner时&#xff0c;获取和理解表单的层级结构非常关键。通过getDescription和getFormDescription方法&#xff0c;您可以清晰掌握表单组件的组织结构和层次关系。这些方法为操控表单的布局和配置提供了强大的支持。 源码地址: Github | G…

如何对AWS进行节省

AWS 云服务器的费用确实可能会让人感到高昂&#xff0c;尤其是在资源使用不当或配置过多的情况下。不过&#xff0c;通过一些策略的合理应用和优化&#xff0c;完全可以降低云服务的使用成本&#xff0c;实现高效节省。以下是九河云总结的几种主要的优化方法&#xff0c;帮助你…

Macmini中普通鼠标与TrackPad联动问题解决

入手了一款Macmini&#xff0c;然后接了一个普通鼠标&#xff0c;然后又买了一个TrackPad。 接下来&#xff0c;问题来了&#xff0c;这两个玩意之间是联动的&#xff0c;出现问题的地方在于鼠标滚轮对于页面内容滚动的方向上。 通常Windows系统中&#xff0c;鼠标滚轮向前&am…

基于Spring Boot+Unipp的博物馆预约小程序(协同过滤算法、二维码识别)【原创】

&#x1f388;系统亮点&#xff1a;协同过滤算法、二维码识别&#xff1b; 一.系统开发工具与环境搭建 1.系统设计开发工具 后端使用Java编程语言的Spring boot框架 项目架构&#xff1a;B/S架构 运行环境&#xff1a;win10/win11、jdk17 前端&#xff1a; 技术&#xff1a;框…

深入理解 JavaScript 中的 Array.find() 方法:原理、性能优势与实用案例详解

目录 深入理解 JavaScript 中的 Array.find() 方法&#xff1a;原理、性能优势与实用案例详解 一、引言&#xff1a;为什么要使用Array.find() 二、Array.find()的使用与技巧 1、基础语法 2、返回值 3、使用技巧 三、Array.find()的优势与实际应用案例 1、利用返回引用…

安全、便捷、效率高,明达边缘计算网关助力制药装备企业远程调机

随着药厂对设备运维需求的增长&#xff0c;制药装备企业需要在提高运维效率的同时&#xff0c;降低人工及差旅成本。制药装备因其数据具有高度的保密性&#xff0c;要求运维工程师提供安全可靠的远程调试方式。本案例介绍了明达技术MBox20系列5口WIFI通用网关在制药装备上的应用…

HBase 开发:使用Java操作HBase

1、实战简介 HBase和Hadoop一样&#xff0c;都是用Java进行开发的&#xff0c;本次实训我们就来学习如何使用Java编写代码来操作HBase数据库。 实验环境&#xff1a; hadoop-2.7 JDK8.0 HBase2.1.1 2、任务 1、第1关&#xff1a;创建表 package step1; import java.io.IOE…

vulhub之log4j

Apache Log4j Server 反序列化命令执行漏洞(CVE-2017-5645) 漏洞简介 Apache Log4j是一个用于Java的日志记录库,其支持启动远程日志服务器。Apache Log4j 2.8.2之前的2.x版本中存在安全漏洞。攻击者可利用该漏洞执行任意代码。 Apache Log4j 在应用程序中添加日志记录最…

【视觉SLAM】2-三维空间刚体运动的数学表示

读书笔记&#xff1a;学习空间变换的三种数学表达形式。 文章目录 1. 旋转矩阵1.1 向量运算1.2 坐标系空间变换1.3 变换矩阵与齐次坐标 2. 旋转向量和欧拉角2.1 旋转向量2.2 欧拉角 3. 四元数 1. 旋转矩阵 1.1 向量运算 对于三维空间中的两个向量 a , b ∈ R 3 a,b \in \R^3 …

Ubuntu22.04基于ROS2-Humble安装moveit2教程(亲测)

一、安装ROS2-Humble 1、参考&#xff1a;Ubuntu22.04安装ROS2-humble-CSDN博客 2、确保安装完成 source /opt/ros/humble/setup.bash 方法一&#xff1a;二进制安装 sudo apt install ros-humble-moveit* 方法二&#xff1a;安装源码编译 一、卸载二进制安装包 sudo a…

一些常见网络安全术语

1、黑帽 为非法目的进行黑客攻击的人&#xff0c;通常是为了经济利益。他们进入安全网络以销毁&#xff0c;赎回&#xff0c;修改或窃取数据&#xff0c;或使网络无法用于授权用户。这个名字来源于这样一个事实&#xff1a;老式的黑白西部电影中的恶棍很容易被电影观众识别&…

ISCTF 2024 web

ISCTF 2024 web 小蓝鲨的冒险 源码&#xff1a; <?php error_reporting(0); highlight_file(__FILE__); $a "isctf2024"; $b $_GET["b"]; parse_str($b); echo "小蓝鲨开始闯关&#xff0c;你能帮助他拿到flag吗?<br>"; if ($a…

AIGC----生成对抗网络(GAN)如何推动AIGC的发展

AIGC: 生成对抗网络(GAN)如何推动AIGC的发展 前言 随着人工智能领域的迅猛发展&#xff0c;AI生成内容&#xff08;AIGC&#xff0c;AI Generated Content&#xff09;正成为创意产业和技术领域的重要组成部分。在AIGC的核心技术中&#xff0c;生成对抗网络&#xff08;GAN&am…

删除k8s 或者docker运行失败的脚本

vi delete_exited_containers.sh#!/bin/bash# 列出所有停止的容器并存储到数组 list_exited_containers() {echo -e "\nStopped containers:"containers()# 获取停止的容器信息并存入数组while IFS read -r line; docontainers("$line")done < <(do…

如何在MindMaster思维导图中制作PPT课件?

思维导图是一种利用色彩、图画、线条等图文并茂的形式&#xff0c;来帮助人们增强知识或者事件的记忆。因此&#xff0c;思维导图也被常用于教育领域&#xff0c;比如&#xff1a;教学课件、读书笔记、时间管理等等。那么&#xff0c;在MindMaster免费思维导图软件中&#xff0…

【unity小技巧】一些unity3D灯光的使用与渲染及性能优化方案

文章目录 天空盒反射配置太阳耀斑眩光烘培光照烘培光照时弹出错误&#xff0c;记得勾选模型下面的选择阴影项目配置光源模型模型shader的问题 全局光照混合光照模式混合照明模式减性照明模式Shadowmask照明模式间接烘焙照明模式 环境光遮罩灯光探针反射探针技术关闭反射探针可以…