Kafka快速安装与使用
引言
这篇文章是一篇Ubuntu(Linux)
环境下的Kafka
安装与使用教程,通过本文,你可以非常快速搭建一个kafka
的小单元进行日常开发与调测。
安装步骤
下载与解压安装
首先我们需要下载一下Kafka,这里笔者采用wget
指令:
wget https://downloads.apache.org/kafka/3.9.0/kafka_2.13-3.9.0.tgz
完成下载后将项目解压与重命名,方便后续的使用:
tar -xzf kafka_2.13-3.9.0.tgz
mv kafka_2.13-3.9.0 kafka
基本配置
打开config/server.properties文件,将ip改为你的服务器ip,
listeners=PLAINTEXT://x.x.x.x:9092
advertised.listeners=PLAINTEXT://x.x.x.x:9092
启动测试
完成上述步骤之后,将zk启动,观测控制台启动是否无误,无误之后可以尝试后台启动,这里笔者为了文章的精简就不做过多演示了:
./bin/zookeeper-server-start.sh config/zookeeper.properties
如下图,成功绑定2181后即可说明zk启动成功了:
同理将Kafka
服务端启动即可:
./bin/kafka-server-start.sh config/server.properties
生产者与消费者收发调测
经过上述的基本配置之后,我们已经成功的将kafka
服务端启动了,以本文为例笔者的消费者会订阅transactions
这个topic
,对应的启动指令为:
./bin/kafka-console-consumer.sh --bootstrap-server ip:9092 --topic transactions --from-beginning
确认无误后,将生产者直接启动:
./bin/kafka-console-producer.sh --broker-list 172.19.182.7:9092 --topic transactions
随后我们在生产者控制台键入hello consumer
:
[[Asharkchili@DESKTOP-xxxxxx:~/kafka$ ./bin/kafka-console-producer.sh --broker-list 172.19.182.7:9092 --topic transactions
>hello consumer
>
如果消费者接收消息成功,则说明本次kafka的基本配置与部署完成。
小结
参考
https://blog.csdn.net/m0_37903882/article/details/133893424
相关文章:

Kafka快速安装与使用
引言 这篇文章是一篇Ubuntu(Linux)环境下的Kafka安装与使用教程,通过本文,你可以非常快速搭建一个kafka的小单元进行日常开发与调测。 安装步骤 下载与解压安装 首先我们需要下载一下Kafka,这里笔者采用wget指令: wget https:…...

Java EE初阶——wait 和 notify
1. 线程饥饿 线程饥饿是指一个或多个线程因长期无法获取所需资源(如锁,CPU时间等)而持续处于等待状态,导致其任务无法推进的现象。 典型场景 优先级抢占: 在支持线程优先级的系统中,高优先级线程可能持续…...

RPA vs. 传统浏览器自动化:效率与灵活性的终极较量
1. 引言 在数字化转型的大潮下,企业和开发者对浏览器自动化的需求日益增长。无论是网页数据抓取、自动化测试,还是用户行为模拟,浏览器自动化已经成为提升效率的关键工具。然而,面对越来越严格的反自动化检测、复杂的 Web 结构和…...
Flask框架深度解析:蓝图、上下文机制与Jinja2模板引擎实战
Flask作为Python最流行的轻量级Web框架之一,以其简洁、灵活和高度可扩展的特性赢得了广大开发者的青睐。本文将深入探讨Flask框架的三大核心特性:蓝图(Blueprint)模块化开发、上下文(Context)管理机制以及Jinja2模板引擎的高级用法。无论你是Flask初学者…...

docker 快速部署若依项目
1、首先创建一个自定义网络,作用是使连接到该网络的容器能够通过容器名称进行通信,无需使用复杂的IP地址配置,方便了容器化应用中各个服务之间的交互。 sudo docker network create ruoyi 2、创建一个文件夹,创建compose.yml文件…...

polarctf-web-[rce1]
考点: (1)RCE(exec函数) (2)空格绕过 (3)执行函数(exec函数) (4)闭合(ping命令闭合) 题目来源:Polarctf-web-[rce1] 解题: 这段代码实现了一个简单的 Ping 测试工具,用户可以通过表单提交一个 IP 地址,服务器会执…...
数据备份与恢复方案
数据备份与恢复方案 一.背景 为确保公司信息安全,防止关键数据丢失,应对突发事件,特制定全面的数据备份与恢复方案。该方案将对公司的各类文件资料进行分级管理,并针对不同级别的数据设定相应的备份策略和恢复流程。 二…...

Redis+Caffeine构造多级缓存
一、背景 项目中对性能要求极高,因此使用多级缓存,最终方案决定是RedisCaffeine。其中Redis作为二级缓存,Caffeine作为一级本地缓存。 二、Caffeine简单介绍 Caffeine是一款基于Java 8的高性能、灵活的本地缓存库。它提供了近乎最佳的命中…...

docker(四)使用篇二:docker 镜像
在上一章中,我们介绍了 docker 镜像仓库,本文就来介绍 docker 镜像。 一、什么是镜像 docker 镜像本质上是一个 read-only 只读文件, 这个文件包含了文件系统、源码、库文件、依赖、工具等一些运行 application 所必须的文件。 我们可以把…...
ms-swift 代码推理数据集
目前想要对SFT微调后的模型进行测试,看官方文档ms-swift中有eval的教程,但是从介绍来看,eval使用的是modelscope的评测内容。 评测 SWIFT支持了eval(评测)能力,用于对原始模型和训练后的模型给出标准化…...

AXI4总线协议 ------ AXI_LITE协议
一、AXI 相关知识介绍 https://download.csdn.net/download/mvpkuku/90841873 AXI_LITE 选出部分重点,详细文档见上面链接。 1.AXI4 协议类型 2.握手机制 二、AXI_LITE 协议的实现 1. AXI_LITE 通道及各通道端口功能介绍 2.实现思路及框架 2.1 总体框架 2.2 …...
DATE_FORMAT可以接收date类型,也可以接收String类型!
DATE_FORMAT 是 SQL 函数,主要用于将日期/时间类型的字段按照指定格式转换成字符串。在 MyBatis 的 XML 动态 SQL 中,你看到的这段代码是为了比较数据库中的日期字段和传入参数的日期值,但会忽略时间部分,只比较年月日。 代码解释…...

Ubuntu24.04 安装 5080显卡驱动以及cuda
前言 之前使用Ubuntu22.04版本一直报错,然后换了24.04版本才能正常安装 一. 配置基础环境 Linux系统进行环境开发环境配置-CSDN博客 二. 安装显卡驱动 1.安装驱动 按以下步骤来: sudo apt update && sudo apt upgrade -y#下载最新内核并安装 sudo add…...
华三H3C交换机配置NTP时钟步骤 示例
现场1台H3C 5110交换机 版本:Comware Software, Version 5.20.99, Release 1105 当前没有指定NTP, <H3C-5110>dis ntp-service status Clock status: unsynchronizedClock stratum: 16Reference clock ID: noneNominal frequency: 100.0000 HzAc…...
RKNN开发环境搭建(ubuntu22.04)
以下情况在RV1106G3的平台上验证正常。 1、conda安装 1)conda --version//确认是否安装 2)创建一个安装目录,进行下一步 3)wget https://mirrors.tuna.tsinghua.edu.cn/anaconda/miniconda/Miniconda3-4.6.14-Linux-x…...
matlab多项式
1. 多项式表示 多项式用行向量表示,按降幂排列系数。例如,多项式 3x22x1 表示为 [3 2 1]。 2. 创建多项式 直接输入系数:如 p [1 -3 3 -1] 表示 x3−3x23x−1。由根创建:使用 poly 函数。例如,根为 [1, 1, 1]&…...
Sprnig MVC 如何统一异常处理 (Exception Handling)?
主要有以下几种方式来实现统一异常处理,其中 ControllerAdvice (或 RestControllerAdvice) 结合 ExceptionHandler 是最常用的方式。 1. ExceptionHandler 注解 作用: 用于标记一个方法,该方法将处理在同一个 Controller 类中抛出的特定类型…...

SpringAI-RC1正式发布:移除千帆大模型!
续 Spring AI M8 版本之后(5.1 发布),前几日 Spring AI 悄悄的发布了最新版 Spring AI 1.0.0 RC1(5.13 发布),此版本也将是 GA(Generally Available,正式版)发布前的最后…...

操作系统之进程和线程听课笔记
计算机的上电运行就是构建进程树,进程调度就是在进程树节点进程进行切换 进程间通信的好处 经典模型 生产者和消费者 进程和线程的区别 线程引入带来的问题线程的优势 由于unix70年代产生,90年代有线程,当时数据库系统操作需要线程,操作系统没有来得及重造,出现了用户态线…...
【vue】封装接口,全局字典,表格表头及使用
一、封装接口(API请求) 1. 创建axios实例 // src/utils/request.js import axios from axiosconst service axios.create({baseURL: process.env.VUE_APP_BASE_API,timeout: 10000 })// 请求拦截器 service.interceptors.request.use(config > {co…...
深入解析ZAB协议:ZooKeeper的分布式一致性核心
引言 在分布式系统中,如何高效、可靠地实现多节点间的数据一致性是核心挑战之一。ZAB协议(ZooKeeper Atomic Broadcast)作为 ZooKeeper的核心算法,被广泛应用于分布式协调服务(如Kafka、HBase、Dubbo等)。…...

COMSOL随机参数化表面流体流动模拟
基于粗糙度表面的裂隙流研究对于理解地下水的流动、污染物传输以及与之相关的地质灾害(如滑坡)等方面具有重要意义。本研究通过蒙特卡洛方法生成随机表面形貌,并利用COMSOL Multiphysics对随机参数化表面的微尺度流体流动进行模拟。 参数化…...
大模型笔记-“训练”和“推理”概念
在大模型(如Transformer类模型、LLM)的资源管理和开发流程中,“训练”和“推理”是两个核心概念,分别对应模型的构建和实际应用阶段: 训练是模型的“学习过程”,需要大量资源和时间。推理是模型的“应用过…...

JavaSwing中的容器之--JScrollPane
JavaSwing中的容器之–JScrollPane 在Java Swing中,容器是用于容纳其他组件(如按钮、标签等)的组件。Swing提供了多种容器,它们可以嵌套使用以创建复杂的用户界面。 JScrollPane是一个轻量级组件,提供可滚动视图。JSc…...

使用 Cookie 实现认证跳转功能
使用 Cookie 实现认证跳转功能的实践与解析 在 Web 开发中,用户身份认证是一个基础而关键的功能点。本文将通过一个简单的前后端示例系统,介绍如何基于 Cookie 实现 Token 保存与自动跳转认证的功能,并结合 Cookie 与 Header 的区别、使用场…...
Reth(冗余以太网接口) 和Bridge-Aggregation(链路聚合接口)区别
Reth(Redundant Ethernet)与Bridge-Aggregation是H3C设备中两种不同的接口技术,主要区别体现在工作原理、应用场景及配置特性上。以下是详细对比分析: 定义与类型 Reth(冗余以太网接口) 类型:…...
(面试)Android各版本新特性
Android 6.0 (Marshmallow, API 23) 运行时权限管理:用户可在应用运行时动态授予或拒绝权限,取代安装时统一授权4。Doze模式与应用待机:优化后台耗电,延长设备续航5。指纹识别支持:原生API支持指纹身份验证。 Android…...
算法基础 -- 小根堆构建的两种方式:上浮法与下沉法
小根堆构建的两种方式:上浮法与下沉法 在构建小根堆(Min-Heap)时,通常有两种常见的构建方式: 上浮建堆(逐个插入,上浮调整)下沉建堆(Heapify 自底向上,下沉…...

LED接口设计
一个LED灯有3种控制状态,常亮、常灭和闪烁,要做到这种控制最简单的一种方法是使用任何一款处理器的普通IO去控制。 用IO控制方式有两种,一种是高有效,如下图1所示IO口为高电平时LED亮,IO为低电平时LED不亮。IO口出一个…...
西安前端面试
面试1 1.vue2和vue3的原理及区别 2.伪数组 3.对箭头函数怎么理解的 4.vue父子组件传值的几种方式 5.对Promise的理解 面试2 1.两个升序数组实现合并升序排序 2.数组拍平[3, [[7, [1, 5]], 4], 8, [6]] 面试3 1.let var const的区别,什么时候const能改变 …...