大数据(kafka-原理及架构)

kafka背景及应用场景

     由LinkedIn 公司开发的一个分布式的消息系统;
     高吞吐率;
     支持Kafka Server间的消息分区,及分布式消费;
     同时支持离线数据处理和实时数据处理;
     支持在线水平扩展。

kafka基本架构

463c78c1f7d7eb4eb0d822a937c09fe449d.jpg

kafka基本名词解释

afce9e3f9131743796e4ec0cc4d403e0b75.jpg

kafka顺序写磁盘

ee3509eb90237f75204fbc7c3e431d0f55f.jpg

Kafka的文件存储机制

2d245db849eea5432727c85c0f4444f9660.jpg

Kafka的文件复制原理

65e046b6cf1fb1940812f8af2c73b0de84a.jpg

Kafka的数据可靠性的保证

request.required.acks=-1参数来设置数据可靠性的级别
min.insync.replicas配合使用

Kafka的发送模式,默认同步producer.type=sync,以下是异步的参数

7a50e4381e609cf47f11a7ccc9fdae9d310.jpg

Kafka的消息传输保障

At most once: 消息可能会丢,但绝不会重复传输
At least once:消息绝不会丢,但可能会重复传输
Exactly once:每条消息肯定会被传输一次且仅传输一次

Kafka的单节点搭建

Kafka版本下载
配置server.properties和consumer.properties
Kafka依赖zookeeper

搭建步骤

1:下载kafka
    地址:http://kafka.apache.org/downloads

2:上传安装包到服务器上面,并且进行解压

3:进入kafka的安装目录下的config目录
    1)编辑server.properties文件,修改zk的服务地址,比如:
    zookeeper.connect=hm02:2181,hs0201:2181,hs0202:2181

    2)编辑consumer.properties文件,修改zk的服务地址,比如:
    zookeeper.connect=hm02:2181,hs0201:2181,hs0202:2181

4:启动zk集群
     ./zookeeper-3.4.8/bin/zkServer.sh start

5:启动kafka的server
    ./bin/kafka-server-start.sh config/server.properties 启动kafka服务

6:克隆一个会话来进行创建一个主题,topic
     ./bin/kafka-topics.sh --create --zookeeper hm02:2181,hs0201:2181,hs0202:2181 --replication-factor 1 --partitions 1 --topic mykaka

    查看有那些topic:
    ./bin/kafka-topics.sh  --list --zookeeper hm02:2181,hs0201:2181,hs0202:2181

7:创建一个生产者,这里是使用命令行的producer
    ./bin/kafka-console-producer.sh --broker-list localhost:9092 --topic mykaka

8:创建一个消费者,这里也是用命令行的consumer
     ./bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic mykaka --from-beginning

 

 

 

转载于:https://my.oschina.net/u/3728166/blog/3068694

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值