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

kafka背景及应用场景

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

kafka基本架构

kafka基本名词解释bootstrap

kafka顺序写磁盘服务器

Kafka的文件存储机制架构

Kafka的文件复制原理异步

Kafka的数据可靠性的保证分布式

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

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

Kafka的消息传输保障命令行

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

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

相关文章
相关标签/搜索