Kafka消息队列在Linux上的实现技巧
时间:2025-03-24 12:30:31 442浏览 收藏
本文详细介绍了在Linux系统上安装和配置Apache Kafka消息队列的完整步骤,包括安装Java运行环境、下载和解压Kafka、启动ZooKeeper和Kafka服务器、创建Topic以及发送和接收消息等。 通过简单的命令行操作,即可快速搭建一个本地Kafka环境,方便学习和测试。文章涵盖了从环境准备到基本操作的完整流程,并指明了生产环境部署需考虑的额外因素,适合Kafka初学者快速上手。 关键词:Kafka, 消息队列, Linux, 安装, 配置, 教程

本文将指导您如何在Linux系统上快速搭建Kafka消息队列。 Kafka依赖Java运行环境,因此第一步是安装Java。
一、安装Java运行环境
使用OpenJDK或Oracle JDK均可。以下命令演示如何安装OpenJDK 11:
sudo apt update sudo apt install openjdk-11-jdk
二、下载并解压Kafka
从Apache Kafka官网下载最新版本,并使用以下命令解压:
wget https://downloads.apache.org/kafka/3.2.0/kafka_2.13-3.2.0.tgz # 请替换为实际版本号 tar -xzf kafka_2.13-3.2.0.tgz cd kafka_2.13-3.2.0
三、启动ZooKeeper
Kafka依赖ZooKeeper进行集群管理。在Kafka目录下执行以下命令启动ZooKeeper:
bin/zookeeper-server-start.sh config/zookeeper.properties
四、启动Kafka服务器
ZooKeeper启动成功后,即可启动Kafka服务器:
bin/kafka-server-start.sh config/server.properties
五、创建Topic
使用以下命令创建一个名为“my-topic”的Topic:
bin/kafka-topics.sh --create --topic my-topic --bootstrap-server localhost:9092 --replication-factor 1 --partitions 1
其中localhost:9092是Kafka服务器地址和端口,replication-factor表示副本因子,partitions表示分区数。
六、发送和接收消息
使用以下命令发送消息到“my-topic”:
bin/kafka-console-producer.sh --topic my-topic --bootstrap-server localhost:9092
在命令行输入消息并回车发送。
接收消息:
bin/kafka-console-consumer.sh --topic my-topic --from-beginning --bootstrap-server localhost:9092
这会显示Topic中的所有消息。
七、停止服务
完成操作后,请按以下步骤停止服务:
# 停止消费者 (如果使用kafka-console-consumer.sh) bin/kafka-console-consumer.sh --topic my-topic --bootstrap-server localhost:9092 --shutdown # 停止生产者 (如果使用kafka-console-producer.sh,则使用Ctrl+C) # 停止Kafka服务器 bin/kafka-server-stop.sh # 停止ZooKeeper服务器 bin/zookeeper-server-stop.sh
以上步骤完成Linux系统上Kafka消息队列的搭建。 生产环境部署需要考虑更多因素,例如安全策略、性能优化、监控和日志记录等。
以上就是本文的全部内容了,是否有顺利帮助你解决问题?若是能给你带来学习上的帮助,请大家多多支持golang学习网!更多关于文章的相关知识,也可关注golang学习网公众号。
-
501 收藏
-
501 收藏
-
501 收藏
-
501 收藏
-
501 收藏
-
文章 · linux | 3天前 | Linux · 运维教程 · cgroup v2 · MemoryMax · 内存限制 · 服务运维 · Linux 内存限制 cgroup v2 MemoryMax MemoryCurrent 服务单元 服务运维139 收藏
-
文章 · linux | 3天前 | Linux · Path · sudo · 运维排查 · 权限配置 · Linux sudo path 绝对路径 command not found secure_path visudo440 收藏
-
文章 · linux | 4天前 | 日志 · Linux · shell · crontab · 运维排查 · Linux 定时任务 path Shell脚本 crontab 绝对路径 cron日志136 收藏
-
476 收藏
-
文章 · linux | 5天前 | Linux · 磁盘空间 · du · 运维排查 · lsof · df · Linux磁盘满 df du不一致 lsof +L1 deleted文件 磁盘空间排查470 收藏
-
186 收藏
-
文章 · linux | 1星期前 | Linux · 服务治理 · 日志排查 · 运维教程 · Linux 服务管理器 journalctl 服务重启 运维排查 RestartSec start-limit-hit408 收藏
-
399 收藏
-
120 收藏
-
文章 · linux | 3星期前 | Linux · inode · 日志清理 · 磁盘排查 · 服务器运维 · Linux inode 磁盘空间 df du lsof No space left on device335 收藏
-
422 收藏
-
文章 · linux | 3星期前 | 服务器 · Linux · ssh · 运维排查 · 登录慢 · Linux SSH pam sshd_config 登录慢 UseDNS GSSAPI 密钥权限153 收藏
-
- 前端进阶之JavaScript设计模式
- 设计模式是开发人员在软件开发过程中面临一般问题时的解决方案,代表了最佳的实践。本课程的主打内容包括JS常见设计模式以及具体应用场景,打造一站式知识长龙服务,适合有JS基础的同学学习。
- 立即学习 543次学习
-
- GO语言核心编程课程
- 本课程采用真实案例,全面具体可落地,从理论到实践,一步一步将GO核心编程技术、编程思想、底层实现融会贯通,使学习者贴近时代脉搏,做IT互联网时代的弄潮儿。
- 立即学习 516次学习
-
- 简单聊聊mysql8与网络通信
- 如有问题加微信:Le-studyg;在课程中,我们将首先介绍MySQL8的新特性,包括性能优化、安全增强、新数据类型等,帮助学生快速熟悉MySQL8的最新功能。接着,我们将深入解析MySQL的网络通信机制,包括协议、连接管理、数据传输等,让
- 立即学习 500次学习
-
- JavaScript正则表达式基础与实战
- 在任何一门编程语言中,正则表达式,都是一项重要的知识,它提供了高效的字符串匹配与捕获机制,可以极大的简化程序设计。
- 立即学习 487次学习
-
- 从零制作响应式网站—Grid布局
- 本系列教程将展示从零制作一个假想的网络科技公司官网,分为导航,轮播,关于我们,成功案例,服务流程,团队介绍,数据部分,公司动态,底部信息等内容区块。网站整体采用CSSGrid布局,支持响应式,有流畅过渡和展现动画。
- 立即学习 485次学习