01、Kafka ------ 下载、安装 ZooKeeper 和 Kafka
目录
- Kafka是什么?
- 安装 ZooKeeper
- 下载
- 安装
- 启动 zookeeper 服务器端
- 启动 zookeeper 的命令行客户端工具
- 安装 Kafka
- 下载
- 安装
- 启动 Kafka 服务器
Kafka是什么?
RabbitMQ的性能比ActiveMQ的性能有显著提升。
Kafka的性能比RabbitMQ的性能又有显著提升。
Kafka自称开源的、分布式事件(消息、记录)流框架。
Kafka官方文档,一会它说事件(Event)、一会又说消息、一会它又说记录(Record)。
RabbitMQ 有官方自带的图形界面,Kafka没有,所以用这个第三方的CMAK。
使用Kafka需要安装的软件及安装顺序:
ZooKeeper → Kafka → CMAK(图形界面管理工具)
安装 ZooKeeper
Kafka目前还依赖于ZooKeeper,因此在安装Kafka之前需要先安装、运行ZooKeeper
下载
zookeeper-3.8.3版本
1、登录ZooKeeper官网站点下载ZooKeeper最新发行版的压缩包,用最新的7-Zip解压下载得到的压缩包。
解压:
安装
2、将conf/zoo_sample.cfg文件复制一份、并重命名为zoo.cfg,放在同级目录下
打开zoo.cfg文件,将如下配置行(修改ZooKeeper的数据存储目录、ZooKeeper会自动创建该目录):
dataDir=/tmp/zookeeper
改为如下形式:(建议改成绝对路径)
dataDir=E:/install/ZooKeeper/workspace/zookeeper-data
(dataDir 是指定zookeeper的数据存储目录,因为zookeeper是要管理分布式应用的多个节点,这些节点的数据就存在这个dataDir 指定的地址目录里面。)
zookeeper-data 这个文件夹会在启动zookeeper服务器的时候自动生成的。
路径问题注意点:
(我这里是已经配置好环境变量再测试的了)
相对路径的情况:
如果改成这种 dataDir=…/zookeeper-data 相对路径的形式,那么在启动zookeeper服务器的时候会报错,
小黑窗输入 zkServer
绝对路径的情况:
成功创建zookeeper用来存放节点数据的文件夹
3、ZooKeeper需要两个环境变量:
- JAVA_HOME:ZooKeeper需要Java环境,因此用该环境变量指定JDK的安装路径。
- PATH:将bin目录(包含zkCli、zkEnv、zkServer命令)添加到PATH环境变量中
PATH:
JAVA_HOME:
启动 zookeeper 服务器端
4、执行如下命令即可使用zoo.cfg作为配置文件来启动ZooKeeper服务。
小黑窗输入命令: zkServer
默认端口:2181
启动 zookeeper 的命令行客户端工具
5、ZooKeeper服务端启动之后,可使用 zkCli(Linux下使用zkCli.sh命令)来查看节点状态,就是看zookeeper客户端(或者说命令行)是否连接zookeeper服务端成功。
运行如下命令:
小黑窗输入命令:zkCli -server 127.0.0.1:2181
再打开一个小黑窗
上面命令指定使用 zkCli 连接运行在 “127.0.0.1:2181” 的 ZooKeeper。
使用 zkCli 连接到 ZooKeeper服务器之后,可通过ls子命令查看ZooKeeper当前的节点。看如下命令及执行结果:
ls / :列出根路径下的所有节点
[zookeeper]
上面执行结果表明ZooKeeper当前只有一个zookeeper节点。
【备注】:zkCli 就是 ZooKeeper 提供的命令行客户端工具,可用于查看、添加、删除、修改节点等,可通过help子命令来获取该工具的帮助。
安装 Kafka
下载
1、登录官网下载Kafka压缩包,并解压下载得到的压缩包。
Kafka官网
Kafka 是用 Scala 语言写的,Scala 是一个Java虚拟机语言。
源码是用Scala语法写的,但是Scala它所编译生成出来的目标文件是class文件,这个class文件可以直接在Java虚拟机平台运行。
这个kafka_2.13-3.6.1中,2.13是 Scala 的版本,3.6.1 是Kafka 的版本。
安装
2、Kafka需要两个环境变量:
- JAVA_HOME:Kafka需要Java环境,因此通过该环境变量指定JDK的安装路径。- PATH:对于Linux平台,将Kafka解压路径下bin子目录添加到PATH环境中;对于Windows平台,将Kafka解压路径下bin\windows子目录添加到PATH环境中。
JDK 是一直都有的,这里只需要添加path路径
因为后面配置好后,小黑窗启动的时候出现这个问题:所以重新改了路径,先缩短路径长度
后面 反斜杠\ 改成 正斜杠/
3、打开config/server.properties配置文件,修改如下配置行(配置Kafka的数据存储目录):
log.dirs=/tmp/kafka-logs改为如下形式log.dirs=E:/install/kafka_2.13-3.6.1/kafka-data——上面指定使用Kafka解压路径下kafka-data作为Kafka的数据存储目录(日志存储目录)
启动 Kafka 服务器
4、启动Kafka服务器。
请注意:启动Kafka服务器之前,先启动ZooKeeper服务器。然后执行如下命令:
kafka-server-start E:/install/kafka_2.13-3.6.1/config/server.properties
该命令的参数需要指定启动Kafka所用的配置文件,上面命令运行完成就代表了Kafka的第1个节点启动完成。
自动创建出这个 文件夹。这个文件夹就存放了kafka的日志文件,也就是数据文件。
相关文章:

01、Kafka ------ 下载、安装 ZooKeeper 和 Kafka
目录 Kafka是什么?安装 ZooKeeper下载安装启动 zookeeper 服务器端启动 zookeeper 的命令行客户端工具 安装 Kafka下载安装启动 Kafka 服务器 Kafka是什么? RabbitMQ的性能比ActiveMQ的性能有显著提升。 Kafka的性能比RabbitMQ的性能又有显著提升。 K…...
Spark: 检查数据倾斜的方法以及解决方法总结
1. 使用Spark UI Spark UI提供了一个可视化的方式来监控和调试Spark作业。你可以通过检查各个Stage的任务执行时间和数据大小来判断是否存在数据倾斜。 任务执行时间: 如果某个Stage中的大部分任务很快完成,但有少数任务执行时间非常长,这可能是数据倾…...

基于JavaWeb+BS架构+SpringBoot+Vue“共享书角”图书借还管理系统系统的设计和实现
基于JavaWebBS架构SpringBootVue“共享书角”图书借还管理系统系统的设计和实现 文末获取源码Lun文目录前言主要技术系统设计功能截图订阅经典源码专栏Java项目精品实战案例《500套》 源码获取 文末获取源码 Lun文目录 第1章 概 述 5 1.1 开发背景及研究意义 5 1.2 国内外研究…...
论文阅读:TinyGPT-V 论文阅读及源码梳理对应
!!!目前只是初稿,静待周末更新 引言 TinyGPT-V来自论文:TinyGPT-V: Efficient Multimodal Large Language Model via Small Backbones,是一篇基于较小LLM作为backbone的多模态工作。相关工作已经开源&…...

XCTF:MISCall[WriteUP]
使用file命令,查看该文件类型 file d02f31b893164d56b7a8e5edb47d9be5 文件类型:bzip2 使用bzip2命令可对该文件进行解压 bzip2 -d d02f31b893164d56b7a8e5edb47d9be5 生成了一个后缀为.out的文件 再次使用file命令,查看该文件类型 file…...

【MIdjourney】图像角度关键词
本篇仅是我个人在使用过程中的一些经验之谈,不代表一定是对的,如有任何问题欢迎在评论区指正,如有补充也欢迎在评论区留言。 1.侧面视角(from side) 侧面视角观察或拍摄的主体通常以其侧面的特征为主要焦点,以便更好地展示其轮廓…...

使用 Jamf Pro 和 Okta 工作流程实现自动化苹果设备管理
Jamf的销售工程师Vincent Bonnin与Okta的产品经理Emily Wendell一起介绍了JNUC 2021的操作方法会议。它们涵盖了Okta工作流程(Okta Workflow),并在其中集成了Jamf Pro,构建了一些工作流程,并提供了几个用例。 Okta 工作…...
根能抵达的节点(二分法、DFS)C++
给定一棵由 N个节点构成的带边权树。节点编号从 0到 N−1,其中 0 号点为根节点。最初,从根节点可以抵达所有节点(包括自己)。如果我们将所有边权小于 X 的边全部删掉,那么从根节点可以抵达的节点数目就可能发生改变。 …...

一天一个设计模式---桥接模式
概念 桥接器模式是一种结构型设计模式,旨在将抽象部分与实现部分分离,使它们可以独立变化而不相互影响。桥接器模式通过创建一个桥接接口,连接抽象和实现,从而使两者可以独立演化。 具体内容 桥接器模式通常包括以下几个要素&a…...

OpenHarmony4.0Release系统应用常见问题FAQ
前言 自OpenHarmony4.0Release发布之后,许多小伙伴使用了配套的系统应用源码以及IDE作为基线开发,也遇到了各种各样的问题,这篇文档主要收录了比较常见的一些问题解答。 FAQ 系统应用源码在哪 目前OpenHarmony系统应用分为3种模式&#x…...

Skywalking UI页面中操作的各种实用功能汇总
刚刚接触skywalking不久,在这里总结一下在UI页面中操作的各种实用功能,随着使用的不断深入,我也会对文章进行持续补充。 本文skywalking 的ui入口是官方demo ,版本是10.0.0-SNAPSHOT-593bd05 http://demo.skywalking.apache.org…...

springboot摄影跟拍预定管理系统源码和论文
首先,论文一开始便是清楚的论述了系统的研究内容。其次,剖析系统需求分析,弄明白“做什么”,分析包括业务分析和业务流程的分析以及用例分析,更进一步明确系统的需求。然后在明白了系统的需求基础上需要进一步地设计系统,主要包罗软件架构模式、整体功能模块、数据库设计。本项…...

【python】python新年烟花代码【附源码】
欢迎来到英杰社区https://bbs.csdn.net/topics/617804998 新年的钟声即将敲响,为了庆祝这个喜庆的时刻,我们可以用 Python 编写一个炫彩夺目的烟花盛典。本文将详细介绍如何使用 Pygame 库创建一个令人惊叹的烟花效果。 一、效果图: 二…...

书生·浦语大模型实战营-学习笔记1
目录 书生浦语大模型全链路开源体系数据集预训练微调评测部署多智能体 视频地址: (1)书生浦语大模型全链路开源体系 开源工具github: https://github.com/InternLM/InternLM 书生浦语大模型全链路开源体系 这次视频中介绍了由上海人工智能实验室OpenMMLa…...

ELF解析03 - 加载段
本文主要讨论 mmap 函数以及如何使用 mmap 函数来加载一个 ELF 的可加载段。 01纠错 Android 8 及以后是会读取 section header 的,但不是所有的 section 都会读取。 https://cs.android.com/android/platform/superproject/main//main:bionic/linker/linker_phdr…...

Mysql——索引相关的数据结构
索引 引入 我们知道,数据库查询是数据库的最主要功能之一。我们都希望查询数据的速度能尽可能的快,因此数据库系统的设计者会从查询算法的角度进行优化。最基本的查询算法当然是顺序查找(linear search),这种复杂度为…...

无代码DIY图像检索
软件环境准备 可参见《HuggingFists-低代码玩转LLM RAG-准备篇》中的HuggingFists安装及Milvus安装。 流程环境准备 图片准备 进入HuggingFists内置的文件系统,数据源->文件系统->sengee_fs_settings_201创建Image文件夹将事先准备的多张相同或不同种类的图…...

Elasticsearch--Master选举
角色 主节点(active master):一般指的是活跃的主节点,避免负载任务,主节点主要用来管理集群,专用master节点仍将充当协调节点 候选节点(master-eligible nodes):默认具备…...

微服务实战系列之Filter
前言 Filter,又名过滤器,当然不是我们日常中见到的,诸如此类构件: 而应该是微服务中常使用的,诸如此类(图片来自官网,点击可查看原图): 一般用于字符编码转换…...
使用GPT大模型调用工具链
本文特指openai使用sdk的方式调用工具链。 安装openai pip install openai export OPENAI_API_KEY"YOUR OPENAI KEY" 定义工具函数 from openai import OpenAI import jsonclient OpenAI() #工具函数 def get_current_weather(location, unit"fahrenheit&q…...

UE5 学习系列(二)用户操作界面及介绍
这篇博客是 UE5 学习系列博客的第二篇,在第一篇的基础上展开这篇内容。博客参考的 B 站视频资料和第一篇的链接如下: 【Note】:如果你已经完成安装等操作,可以只执行第一篇博客中 2. 新建一个空白游戏项目 章节操作,重…...

19c补丁后oracle属主变化,导致不能识别磁盘组
补丁后服务器重启,数据库再次无法启动 ORA01017: invalid username/password; logon denied Oracle 19c 在打上 19.23 或以上补丁版本后,存在与用户组权限相关的问题。具体表现为,Oracle 实例的运行用户(oracle)和集…...

关于nvm与node.js
1 安装nvm 安装过程中手动修改 nvm的安装路径, 以及修改 通过nvm安装node后正在使用的node的存放目录【这句话可能难以理解,但接着往下看你就了然了】 2 修改nvm中settings.txt文件配置 nvm安装成功后,通常在该文件中会出现以下配置&…...

高频面试之3Zookeeper
高频面试之3Zookeeper 文章目录 高频面试之3Zookeeper3.1 常用命令3.2 选举机制3.3 Zookeeper符合法则中哪两个?3.4 Zookeeper脑裂3.5 Zookeeper用来干嘛了 3.1 常用命令 ls、get、create、delete、deleteall3.2 选举机制 半数机制(过半机制࿰…...

376. Wiggle Subsequence
376. Wiggle Subsequence 代码 class Solution { public:int wiggleMaxLength(vector<int>& nums) {int n nums.size();int res 1;int prediff 0;int curdiff 0;for(int i 0;i < n-1;i){curdiff nums[i1] - nums[i];if( (prediff > 0 && curdif…...

Python爬虫(一):爬虫伪装
一、网站防爬机制概述 在当今互联网环境中,具有一定规模或盈利性质的网站几乎都实施了各种防爬措施。这些措施主要分为两大类: 身份验证机制:直接将未经授权的爬虫阻挡在外反爬技术体系:通过各种技术手段增加爬虫获取数据的难度…...

【Zephyr 系列 10】实战项目:打造一个蓝牙传感器终端 + 网关系统(完整架构与全栈实现)
🧠关键词:Zephyr、BLE、终端、网关、广播、连接、传感器、数据采集、低功耗、系统集成 📌目标读者:希望基于 Zephyr 构建 BLE 系统架构、实现终端与网关协作、具备产品交付能力的开发者 📊篇幅字数:约 5200 字 ✨ 项目总览 在物联网实际项目中,**“终端 + 网关”**是…...
在鸿蒙HarmonyOS 5中使用DevEco Studio实现录音机应用
1. 项目配置与权限设置 1.1 配置module.json5 {"module": {"requestPermissions": [{"name": "ohos.permission.MICROPHONE","reason": "录音需要麦克风权限"},{"name": "ohos.permission.WRITE…...

嵌入式学习笔记DAY33(网络编程——TCP)
一、网络架构 C/S (client/server 客户端/服务器):由客户端和服务器端两个部分组成。客户端通常是用户使用的应用程序,负责提供用户界面和交互逻辑 ,接收用户输入,向服务器发送请求,并展示服务…...
IP如何挑?2025年海外专线IP如何购买?
你花了时间和预算买了IP,结果IP质量不佳,项目效率低下不说,还可能带来莫名的网络问题,是不是太闹心了?尤其是在面对海外专线IP时,到底怎么才能买到适合自己的呢?所以,挑IP绝对是个技…...