kafka和消息队列

https://downloads.apache.org/kafka/3.5.1/kafka_2.13-3.5.1.tgz

d

kafka依赖与zookeeper

kakka配置文件

bash 复制代码
broker.id=1    #每个 broker 在集群中的唯一标识,正整数。每个节点不一样
listeners=PLAINTEXT://192.168.74.70:9092 ##监听地址
num.network.threads=3  # 定义用于网络处理的线程数。
num.io.threads=8  #定义用于I/O操作的线程数。
socket.send.buffer.bytes=102400  #设置用于发送数据的套接字缓冲区大小。
socket.receive.buffer.bytes=102400  # 设置用于接收数据的套接字缓冲区大小。
socket.request.max.bytes=104857600 #指定单个请求的最大字节数。
log.dirs=/data/kafka #kakfa 用于保存数据的目录,所有的消息都会存储在该目录当中
num.partitions=3#设置创建新的 topic 默认分区数量,一般为集群的节点数
num.recovery.threads.per.data.dir=1  #
offsets.topic.replication.factor=1  #设置偏移量主题的复制因子为1。
transaction.state.log.replication.factor=1 #事务主题的复制因子(设置更高以确保可用性)。 内部主题创建将失败,直到群集大小满足此复制因素要求
transaction.state.log.min.isr=1#覆盖事务主题的min.insync.replicas配置
log.retention.hours=168#设置 kafka 中消息保留时间,
log.retention.check.interval.ms=300000
zookeeper.connect=192.168.74.70:2181,192.168.74.71:2181,192.168.74.72:2181 #设置Zookeeper服务器的连接地址。
zookeeper.connection.timeout.ms=18000  #设置与Zookeeper建立连接的超时时间。
group.initial.rebalance.delay.ms=0 #设置初始重新平衡延迟的毫秒数。

启动

/apps/kafka_2.13-3.5.1/bin/kafka-server-start.sh -daemon /apps/kafka_2.13-3.5.1/config/server.properties

创建topic

/apps/kafka_2.13-3.5.1/bin/kafka-topics.sh --create --topic magedu --bootstrap-server 192.168.74.70:9092 --partitions 3 --replication-factor 2

查看topic

root@ubuntu20:~# /apps/kafka_2.13-3.5.1/bin/kafka-topics.sh --bootstrap-server 192.168.74.70:9092 --list

magedu

停止kafka

/apps/kafka_2.13-3.5.1/bin/kafka-server-stop.sh

验证topic

状态说明: 有三个分区分别为0、1、2,

PartitionCount: 3 代表分片3个

ReplicationFactor: 2 代表副本2个

分区0的leader是1

Replicas: 代表副本存放的brokerid

Isr: 1,3 代表活者的是1,3

bash 复制代码
root@ubuntu20:~# /apps/kafka_2.13-3.5.1/bin/kafka-topics.sh  --describe   --bootstrap-server  192.168.74.70:9092Topic: magedu	TopicId: H4nV6WulTU-y_S4J2pHfOA	PartitionCount: 3	ReplicationFactor: 2	Configs: 
	Topic: magedu	Partition: 0	Leader: 1	Replicas: 1,3	Isr: 1,3
	Topic: magedu	Partition: 1	Leader: 1	Replicas: 2,1	Isr: 1
	Topic: magedu	Partition: 2	Leader: 3	Replicas: 3,2	Isr: 3

上面的Isr中没有2,可以知道2节点缺少,查看发现2节点的kafka没有启动

启动后正常

bash 复制代码
Topic: magedu	TopicId: H4nV6WulTU-y_S4J2pHfOA	PartitionCount: 3	ReplicationFactor: 2	Configs: 
	Topic: magedu	Partition: 0	Leader: 1	Replicas: 1,3	Isr: 1,3
	Topic: magedu	Partition: 1	Leader: 1	Replicas: 2,1	Isr: 1,2
	Topic: magedu	Partition: 2	Leader: 3	Replicas: 3,2	Isr: 3,2

指定topic查看

/apps/kafka_2.13-3.5.1/bin/kafka-topics.sh --describe --bootstrap-server 192.168.74.70:9092 --topic luo

root@ubuntu20:~# ll /data/kafka/

生产数据

/apps/kafka_2.13-3.5.1/bin/kafka-console-producer.sh --broker-list 192.168.74.71:9092,192.168.74.70:9092 --topic magedu

消费数据

/apps/kafka_2.13-3.5.1/bin/kafka-console-consumer.sh --topic magedu --bootstrap-server 192.168.74.71:9092,192.168.74.70:9092 --from-beginning

--from-beginning 从头消费

通过软件查看数据

创建连接

添加kafka地址配置

修改为字符串类型

可以查看数据

总结

一个消息被消费一次

一个消息被消费多次 -》 数据同步,分发

大多次通常都是消费一次

kafka通常以集群运行,实现高可用

topic(主题):在逻辑上对record(记录、日志)进行分组保存

kafka分区:为了实现数据的高可用,比如将分区0的数据分散到不同的kafka节点,每一个分区有一个broker作为leader和一个broker作为follower

顺序读写

顺序读取

监控:

对端口

curl url 是否200

activemq

端口和rabbitmq 一样

安装

wget https://mirrors.tuna.tsinghua.edu.cn/apache/activemq/5.18.2/apache-activemq-5.18.2-bin.tar.gz

cp apache-activemq-5.18.2-bin.tar.gz /apps/

cd /apps/

tar -xf apache-activemq-5.18.2-bin.tar.gz

ln -s apache-activemq-5.18.2 activemq

vi activemq.xml #不用修改

cd ...

./bin/linux-x86-64/activemq start #启动

netstat -antp|grep 8161 修改地址为0.0.0.0

/usr/local/activemq/conf# vi jetty.xml

访问

http://120.77.146.92:8161/admin/

相关推荐
明达智控技术5 小时前
告别停机内卷!热插拔远程IO,解锁工控运维新范式
分布式·物联网·自动化
漂着的圆木5 小时前
MCP 2026-07-28 长任务改造:别再用 HTTP 超时判断任务失败
分布式·架构·状态模式·ai agent
数智启示录11 小时前
Apache Kafka Consumer 扩到 40 个仍不提速:Partition 上限锁死有效并行度 【Kafka合集】
数据库·经验分享·分布式·缓存·面试·kafka·apache
数智启示录11 小时前
Apache Kafka 幂等 Producer 的边界:Exactly-Once 到了 MySQL 为什么失效 【Kafka合集】
数据库·经验分享·分布式·mysql·面试·kafka·apache
数智启示录12 小时前
Apache Kafka 不只是消息队列:日志与 Offset 分离如何让事件可重放 【Kafka合集】
经验分享·分布式·面试·kafka·apache
数智启示录12 小时前
Apache Kafka 同 Key 仍会乱序:从分区 Offset 到业务可见的四道边界 【Kafka 合集】
大数据·数据库·经验分享·分布式·面试·kafka·apache
BYSJMG12 小时前
大数据毕业设计选题推荐:基于大数据的全球气温历史演变分析与可视化,用Hadoop+Spark处理
大数据·hadoop·分布式·信息可视化·spark·kmeans·课程设计
爱吃苹果的梨叔12 小时前
AI 算力监控中心怎么建?分布式坐席 + 大屏联动 + 过程回放
人工智能·分布式·python
無a伟12 小时前
RabbitMQ :与AMQP的关系、核心组件、交换机类型
分布式·rabbitmq
老周聊架构13 小时前
Flink 连接器与生态:Kafka Offset 提交修复与 MySQL Binlog 延迟指标
mysql·flink·kafka