05、Kafka ------ CMAK 各个功能的作用解释(主题和分区 详解,用命令行和图形界面创建主题和查看主题)

目录

  • CMAK 各个功能的作用解释(主题)
    • ★ 主题
    • ★ 分区
    • ★ 创建主题:
    • ★ 列出和查看主题

CMAK 各个功能的作用解释(主题)



★ 主题

Kafka 主题虽然也叫 topic,但它和 Pub-Sub 消息模型中 topic 主题及 AMQP 的 topic 都不同(AMQP 的 topic 只是 Exchange 的类型)。

Kafka 的主题只是盛装消息的逻辑容器(注意是逻辑容器),主题之下会分为若干个分区,分区才是盛装消息的物理容器。

▲ 消息组织方式实际上是三级结构:主题 → 分区 → 消息。

▲ 主题只是消息的逻辑分类,它只是发布消息的类别或消费源的名称。

发布消息时,面向主题发布消息;
消费消息时,也面向主题消费;
但实际会由 Kafka 将消息存储到分区中,从分区中消费消息。

就是消息是存在分区中的,但是发布和消费消息是面向主题来的。



★ 分区

▲ 分区才是真正存储消息的地方,分区在物理存储层面就是一个一个的日志文件(就是数据文件),这些日志文件保存在 server.properties文件下的 log.dirs属性 指定目录下。
在这里插入图片描述

▲ 分区文件都是一个有序的记录序列,序列的数据项可通过下标访问,下标从0开始,如图所示:

在这里插入图片描述
▲ 分区文件的结构有点类似于 List 集合,只不过 List 集合存储在内存中,而分区文件则持久化地、存储在磁盘上。

消息被消费完成之后,是不会自动从分区中移除的,只能通过设置,比如过某一段时间之后,再从分区中移除。

在这里插入图片描述



★ 创建主题:

【备注】 Kafka 的 Broker 之间的地位是平等,没有所谓谁是主Broker,谁是副Broker的概念。

Kafka的主、从是体现在分区上的 ,分区可分为领导者分区(主)、追随者分区(副)。

领导者分区,其实就是主分区:对外提供服务。
追随者分区,就是所谓副分区:作用是作为主分区的后备。

kafka-topics.bat(.sh)命令可用于操作主题,包括创建主题、删除主题及列出主题、查看主题等。
例如如下命令即可创建一个主题:

^ 这个符号表示命令还没有写完,要换一行

kafka-topics.bat --create ^
–bootstrap-server localhost:9092 ^
–replication-factor 2 ^
–partitions 3 ^
–topic test1

上面命令指定了如下几个选项:

–create:指定创建主题。

–bootstrap-server:指定Kafka Broker的地址。

–replication-factor:指定复制因子。此处指定的复制因子为2,表明每个分区都有两个副本,一个领导者副本,一个追随者副本。

–partions:指定该主题包含的分区数。此处指定的分区数为3,表明该主题由3个分区组成。
–partions选项指定该主题由3个分区组成,而–replication-factor指定每个分区有2个副本,因此实际上该分区包含6(3 * 2)个分区,其中3个领导者分区,3个追随者分区。

–topic:指定主题名。


用命令行创建 topic

在这里插入图片描述

创建出来了,如图

在这里插入图片描述

主题信息:

因为分区是3,复制因子是2,所以一共有6个分区;
因为我们弄了3个broker节点。
如图:每个broker节点分配了两个分区

在这里插入图片描述



CMAK 界面创建topic

在这里插入图片描述

创建出来的主题

在这里插入图片描述

细看主题的分区之类的
因为分区是4,复制因子是3,所以一共有12个分区;
因为我们弄了3个broker节点。
如图:每个broker节点分配了4分区
在这里插入图片描述

分区的存放位置详解:

在这里插入图片描述



★ 列出和查看主题

▲ 可在CMAK列出和查看主题

▲ 也可使用 kafka-topics.bat 的 --list 选项来查看主题列表:

kafka-topics.bat --list --bootstrap-server localhost:9092

Kafka 的 Broker 之间的地位是平等,没有所谓谁是主Broker,谁是副Broker的概念。所以这里就随便写其中一个broker的端口号来查看主题:
如图,跟 CMAK 显示的一样,是3个主题。
在这里插入图片描述

▲ 可使用 kafka-topics.bat 的 --describe 选项来查看指定主题的详细信息。

kafka-topics.bat --describe --bootstrap-server localhost:9092 --topic 主题名

kafka-topics.bat --describe --bootstrap-server localhost:9092 --topic test2

在这里插入图片描述

不知道怎么查看,不知道有哪些命令的时候,可以直接输:kafka-topics 这个命令来看。

在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Java经典框架之Zookeeper

Zookeeper Java 是第一大编程语言和开发平台。它有助于企业降低成本、缩短开发周期、推动创新以及改善应用服务。如今全球有数百万开发人员运行着超过 51 亿个 Java 虚拟机,Java 仍是企业和开发人员的首选开发平台。 课程内容的介绍 1. Zookeeper的介绍和安装 2. …

web学习笔记(九)

目录 1.初识JS(JavaScript) 1.1什么是JavaScript? 1.2HTML5 CSS3 javaScript三者的关系 1.3 JAVAScript的作用 1.4JAVAScript的组成部分 1.5JS注释 1.6补充知识 2.JS的引入方法 2.1行内式 2.2嵌入式(内嵌式) 2.3外链式 3.输入和…

深入理解Word Embeddings:Word2Vec技术与应用

目录 前言1 Word2Vec概述2 CBOW模型2.1 CBOW模型简介2.2 基于词袋(bag of word)的假设2.3 One-hot向量编码2.4 分类问题 3 Skip-gram模型3.1 Skip-gram模型简介3.2 目标词预测上下文3.3 词语关联性的捕捉 4 优化Word2Vec模型的方法4.1 负采样和分层softm…

转转服务瘦身实战

文章目录 1 背景2 第一步-发现并下掉僵尸服务2.1 如何发现僵尸服务2.2 如何下掉僵尸服务 3 第二步-发现并下掉僵尸方法3.1 如何发现僵尸方法3.1.1 全量方法的获取3.1.2 活动方法的获取3.1.3 ServiceAbility Agent方案详解3.1.3.1 ServiceAbility Agent使用方法3.1.3.2 解决stop…

分布式系统架构设计之分布式缓存技术选型

一、概述 随着互联网业务的快速发展,分布式系统已经成为了解决大规模并发请求、高可用性、可扩展性等问题的重要手段。在分布式系统中,缓存作为提高系统性能的关键技术,能够显著降低数据库负载、减少网络延迟、提高数据访问速度。当面对大量…

XD6500S一款串口SiP模块 射频LoRa芯片 内置sx1262

1.1产品介绍 XD6500S是一款集射频前端和LoRa射频于一体的LoRa SIP模块系列收发器SX1262 senies,支持LoRa⑧和FSK调制。LoRa技术是一种扩频协议优化低数据速率,超长距离和超低功耗用于LPWAN应用的通信。 XD6500S设计具有4.2 mA的有效接收电流消耗&#…

Python基础知识总结2——python中的字符串

python字符串 字符串基本特点空字符串和len()函数转义字符字符串拼接字符串复制不换行打印从控制台读取字符串replace() 实现字符串替换str()实现数字转型字符串使用[]提取字符字符串切片slice操作split()分割和join()合并字符串驻留机制和字符串比较字符串比较和同一性成员操作…

Python如何实现微信支付功能代码示例

微信支付是一种基于互联网的移动支付服务,由中国的即时通讯工具微信提供。用户可以通过微信支付在微信平台上进行在线支付、转账和收款。微信支付支持多种支付方式,包括银行卡支付、微信钱包余额支付、扫码支付等。用户可以用微信支付购买商品、支付账单…

C语言编译器(C语言编程软件)完全攻略(第二十一部分:Code::Blocks汉化教程(附带汉化包))

介绍常用C语言编译器的安装、配置和使用。 二十一、Code::Blocks汉化教程(附带汉化包) 由于官方下载的 CodeBlocks 全部都是英文版,本教程中给大家推荐的 CodeBlocks 17.12 版本也是官方英文版,所以本节给大家介绍:如…

C# .Net学习笔记—— 异步和多线程(await/async)

一、介绍 1、控制台测试await/async 2、C# 5.0 .Net framework4.5 CLR4.0 以后才有,本身是一种语法糖 二、基本测试 1、不加await测试。 private async static Task TestAsync() {Log.Info($"当前主线程id{Thread.CurrentThread.ManagedThreadId}"…

【六大排序详解】终篇 :冒泡排序 与 快速排序

终篇 :冒泡排序 与 快速排序 1 冒泡排序1.1 冒泡排序原理1.2 排序步骤1.3 代码实现 2 快速排序2.1 快速排序原理2.1.1 Hoare版本代码实现 2.1.2 hole版本代码实现 2.1.3 前后指针法代码实现 2.1.4 注意取中位数局部优化 2.1.5 非递归版本非递归原理代码实现 2.2 特性总结 谢谢阅…

负责任的人工智能与人机环境系统智能

负责任的人工智能是指在人工智能系统的设计、开发、管理、使用和维护过程中,所有相关的角色(包括设计者、开发者、管理者、使用者、维护者等等)都承担其行为的道义、法律和社会责任。这意味着这些角色需要确保人工智能系统的设计与使用符合伦…

网络安全B模块(笔记详解)- Web渗透测试

Web信息收集 1.通过Kali对服务器场景Linux进行Web扫描渗透测试(使用工具nikto,查看该命令的完整帮助文件),并将该操作使用命令中固定不变的字符串作为Flag提交; Flag:nikto -H 2.通过Kali对服务器场景Linux进行Web扫描渗透测试(使用工具nikto,扫描目标服务器8080端口,…

阻止持久性攻击改善网络安全

MITRE ATT&CK框架是一个全球可访问的精选知识数据库,其中包含基于真实世界观察的已知网络攻击技术和策略。持久性是攻击者用来访问系统的众多网络攻击技术之一;在获得初始访问权限后,他们继续在很长一段时间内保持立足点,以窃取数据、修改…

文章解读与仿真程序复现思路——电网技术EI\CSCD\北大核心《考虑多元不确定性和备用需求的微电网双层鲁棒容量规划》

本专栏栏目提供文章与程序复现思路,具体已有的论文与论文源程序可翻阅本博主免费的专栏栏目《论文与完整程序》 这个标题涉及微电网(Microgrid)的双层鲁棒容量规划,考虑了多元不确定性和备用需求。让我们逐步解读这个标题&#xf…

【软考中级-软件设计师】day1:CPU、数据的表示、校验码

考点分布目录 中央处理单元CPU 练习题 数据的表示 二进制转十进制 练习题 十进制转二进制 练习题 原码 练习题 反码 练习题 补码 练习题 练习题 移码 浮点数 练习题 奇偶校验 练习题 校验码 模2除法 循环冗余校验CRC 练习题 练习题 练习题 奇偶校验码 只…

docker kingbase

docker kingbase run 命令 docker run -tid \ -e ENABLE_CIyes \ -e NEED_STARTyes \ -e DB_MODEoracle \ -e DB_USERkingbase \ -e DB_PASSWORD123456 \ --privileged \ -p 4321:54321 \ -v /home/admin/SoftWare/volume/kingbase/userdata/data:/home/kingbase/userdata/da…

基于seatunnel实现mysql同步clickhouse验证

场景: 需求想要实现mysql同步到clickhouse,seatunnel部署见前面文档linux环境seatunnel安装运行-CSDN博客。 官方说明文档 Clickhouse | Apache SeaTunnel mysql同步配置 server-id1 log_bin/var/lib/mysql/bin.log binlog_formatROW #binlog-do-db 具…

astadmin安装querylist插件Puppeteer

我本来是想在linux服务器上安装,折腾了一天也没安装成功,由于急着用,就先做window10上安装了,以后有时间再研究centos7上安装 一 首先需要安装fastadmin 框架和querylist插件 这个大家可以自行安装,querylist安装地址…

B059-权限管理系统01

目录 知识点介绍项目演示项目搭建动态菜单查询分析(权限表分析)权限系统表分析角色模块pageInfopageHelper实现前端动态分页高级查询新增与修改删除角色 分配权限-表分析角色授权数据-一级和二级权限查询 知识点介绍 项目演示 准备数据库 准备工程auth_new tips:…