kafka 启动 与redis启动

时间:2019-03-20
本文章向大家介绍kafka 启动 与redis启动,主要包括kafka 启动 与redis启动使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

1. kafka
    消息中间件或者消息队列
    
    组件:
        消息生产者:Producer,它是生产数据的源头,负责生成消息发送到服务器。
        消息消费者:Consumer,它是消息的消费方,负责消费kafka的消息。
        主题:Topic,是由用户创建的,配置在kafka服务器,用于建立生产者和消费者之间的生产和消费关系。
        消息分区:Partition,一个topic下面有多个partition,但是只有一个是主分区,其他是从分区。
        Broker:kafka服务器,存储信息。
        消费者组:group,用于归类消费者的,多个消费者可以共同消费一个Topic下的消息,每个消费者其中的部分消息,这些消费者就是组成了消费者组,拥有同一个组名。
        消费者组可以消费一个或者多个分区的数据,相反,一个分区的数据同一时刻只能被一个消费者来消费。(避免重复消费)
        offset:偏移量,消费者拉取数据信息的时候需要指定消息在文件中的偏移量。
    
2. 常用命令
    1.新建主题
    ./bin/kafka-topics.sh --create --zookeeper 192.168.3.102:2181,192.168.3.103:2181,192.168.3.104:2181 --replication-factor 3 --partitions 3 --topic test1
    2. 查看主题
    ./bin/kafka-topics.sh --list --zookeeper 192.168.3.102:2181,192.168.3.103:2181,192.168.3.104:2181
    3. 查看topic详情
    ./bin/kafka-topics.sh --describe --zookeeper 192.168.3.102:2181,192.168.3.103:2181,192.168.3.104:2181 --topic test1
    4. 删除Topic
    ./bin/kafka-topics.sh --delete --zookeeper 192.168.3.102:2181,192.168.3.103:2181,192.168.3.104:2181 --topic test
    5. 修改topic的partition数量(只能增加不能减少)
    ./bin/kafka-topics.sh --alter --zookeeper 192.168.3.102:2181,192.168.3.103:2181,192.168.3.104:2181 --partitions 5 --topic test1
    
3. 消息格式
    partition分区数量不能减少只能增加,同时,数据存在在kafka中,但是元数据放入zookeeper,partition有主从之分,zookeeper协调partition选举leader。消息按顺序存放,消息不可变,消息只能增加不能插入,每一个消息都偶有一个offset,用于消费者消费数据。

4. kafka分区和消费者关系
    kafka分区继承了一个接口,实现的是partitionAssignor,他下面有个类,叫RoundRobinAssignor
    
5. 文件存储机制

./bin/kafka-server-start.sh config/server.properties 1>/dev/null  2>&1  &  启动kafka
        ./redis-server redis.conf        启动redis  ./redis-cli -h 192.168.3.101 -p 6379 -a 123 登录redis
    ./kafka-console-producer.sh --broker-list 192.168.3.101:9092,192.168.3.102:9092,192.168.3.103:9092 --topic test6 生产者