首页 > 编程知识 正文

kafka消费的三种模式,kafka用在什么真实场景

时间:2023-05-04 23:51:47 阅读:16786 作者:4843

什么是Kafka

Apache Kafka是一个开源的消息系统,由Scala撰写。 是由Apache软件基金会开发的开源消息系统项目。

Kafka最初由LinkedIn开发,2011年初成为开源。 2012年10月毕业于Apache Incubator。 这个项目的目标是提供统一、高吞吐量和低延迟的平台来处理实时数据。

Kafka是分布式消息队列。 生产者、消费者的功能。 提供类似JMS的特性,但设计实现完全不同,而且不是JMS规范的实现。

Kafka在保存消息时根据主题进行分类,发送消息的人称为Producer,接收消息的人称为Consumer。 此外,Kafka群集还具有多个Kafka实例,每个实例都是broker。

无论是kafka群集,还是producer和consumer,都依赖zookeeper**群集存储元信息,以确保系统可用性

消息队列内部实现原理消息队列消息传递系统的核心作用是解耦、异步、并行三点

在用户注册的案件列中说明消息系统的作用

用户注册的一般流程

问题

并行执行用户注册

问题** :系统并行启动了四个请求。 在四个请求中,如果一个角运行了一分钟,则无论其他角有多快,用户都必须等待一分钟。 其中一环异常后,整个服务停止时。

用户注册最终匹配

Kafka体系结构,分布式模型Topic :消息根据Topic进行分类

Producer :发送信息者、生产者

消费者:消息的接受者、消费者

broker :每个kafka实例(server )。

Zookeeper :依赖集群保存元信息。

Kafka的环境构建基础环境准备安装前的准备工作(zk已部署) ) ) ) ) ) ) ) )。

l关闭防火墙

chkconfig iptables off setenforce 0

kafka独立安装检查随附的zookeeper是否安装了处理java根@ localhost桌面] # Java-version

Java版本“1.8.0 _ 171”

javaseruntimeenvironment (构建1.8.0 _ 171-b11 ) ) ) ) ) ) )。

Java hotspot 64-bitservervm (构建25.171-b11,混合模式) ) ) )。

如果未安装,请先安装java环境,然后浏览JDK安装方法/.bashrc文件。 (环境变量性能分析方法2 ) ) ) ) ) )。

将kafka文件上传到虚拟机的kafka_2.12-2.2.0

将kafka解压缩到/usr/local进行安装

[ root @ localhost桌面] # tar-zxvf Kafka _ 2.11-1.0.0.tgz-c/opt /

3.1重命名Kafka文件: mv kafka_2.11-1.0.0 /opt/kafka

切换到kafka配置文件目录

[root@localhost config]# pwd

/opt/kafka/config 5.kafka安装目录下的config文件夹是其配置式,需要修改的是server.properties和zookeeper.properties。

[ root @ localhost Kafka ] # mkdir Kafka-logs-0

server.properties: kafka配置文件

log.dirs=/tmp/kafka-logs

修改为

log.dirs=/opt/Kafka1/Kafka-logs-0

zookeeper.properties kafka附带的zookeeper配置

dataDir=/tmp/zookeeper

修改为

datadir=/opt/Kafka1/my _ zookeeper

启动zookeeper

[root@localhost ~]# /opt/kafka/欢乐蜡烛/zookeeper-server-start.sh/opt/Kafka/config/zookeeper.properer

启动kafka

[ root @ localhost desktop ] #/opt/Kafka /欢乐蜡烛/Kafka-server-start.sh/opt/Kafka/config/server.propertier ]

8 .创建主题(创建名为“test”的主题吧。 只有一个分区,只有一个副本) )。

/opt/kafka/欢乐蜡烛/Kafka-topics.sh-- create-- zookeeper localhost 33602181--复制- factor1- -分区

注意:或者,您可以将代理配置为在发布不存在的主题时自动创建主题,而不是手动创建主题。 9 .显示主题:现在可在运行list topic命令时显示此主题

/opt/kafka/欢乐蜡烛/Kafka-topics.sh---- list---- zookeeper localhost :2181

10 .发送消息

Kafka附带一个命令行客户端,用于从文件或标准输入中获取输入,并将其作为消息发送到Kafka群集。 默认情况下,每行都作为单独的消息发送。 运行生产者,在控制台中输入消息并将其发送到服务器。

/opt/kafka/欢乐蜡烛/Kafka-console-producer.sh-- broker-list localhost 33609092-- topic 1704 d

输入等待发送的消息

11 .启动消费者

/opt/kafka/欢乐蜡烛/Kafka-console-consumer.sh-- bootstrap-server 192.168.25.13:9092-- topic 1704 d-1609

/opt/kafka/欢乐蜡烛/Kafka-console-consumer.sh-- bootstrap-server 192.168.25.13:9092-- topic 1704 d是当今生产者

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。