学习kafka

一个存放消息的组件
生产者,  消费者,  broker三部分

消息队列的两种模式
*生产者和消费者(消费者主动拉取信息,然后删除)
*发布订阅()

kafka基础架构*一个topic有多个partition(副本(信息非全量),有分leader和follower)
*消费者组(只消费leader的)(一个分区一个消费者处理)
*zookeeper()


安装

修改broker id
修改ZK地址
修改数据存放路径

生产者原理

流程:数据——缓存——集群
        数据量先写道缓存 到达指定批次数量(batch)(默认16K),或等待时间(linger)(默认0秒)就发送

        *可以异步发送

        *可以异步发送回调

        *同步发送

        分区
       
*1有指定的-指定partution
        *2有key的-根据key和toipc的partition数取余,
        *3啥没有的-粘性分区(随机,批次满了或时间到在随机下一个)

         怎么提高吞吐量


        *加大批次(batch)(默认16K)
        *等待时间(linger)(默认0
        *压缩
        *修改缓冲区大小(默认32M)

        幂等性:(无论发送多少次,都只保存一条)
        去重性(最多一次)配置acks
        可靠性(最少一次)

        有序性(开启幂等性,或者设置单分区)

架构

        消费者

        broker
                broker
                topic
                partition分区
                        可靠性(副本(leader,folloer))
                        生产者和消费者只对leader操
                        一个分区只有一个消费者

        消费者

        zookeeper
                broker.ids
                leader
                辅助选举

生产者API

        *send()异步发送
        *可以回调可以实现同步
        *批量发送设置(batch)(默认16K),或等待时间(linger)默认0
        *配置acks
                (acks=0或者1)最多一次(去重)
                 (acks=-1或者retries>0)最少一次(可靠)
        

消费者API
       
可以自动提交者手动提交(单条或者批量提交)
 

支持事务y

      隔离级别 读未提交,读提交

相关推荐

  1. 学习kafka

    2023-12-06 07:26:01       63 阅读
  2. kafka学习

    2023-12-06 07:26:01       49 阅读
  3. Kafka学习

    2023-12-06 07:26:01       56 阅读
  4. Kafka学习

    2023-12-06 07:26:01       33 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2023-12-06 07:26:01       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2023-12-06 07:26:01       100 阅读
  3. 在Django里面运行非项目文件

    2023-12-06 07:26:01       82 阅读
  4. Python语言-面向对象

    2023-12-06 07:26:01       91 阅读

热门阅读

  1. 【超全】React学习笔记 上:基础使用与脚手架

    2023-12-06 07:26:01       150 阅读
  2. 软件工程 课堂测验 简答

    2023-12-06 07:26:01       47 阅读
  3. MySQL一 | SQL语句

    2023-12-06 07:26:01       65 阅读
  4. 软件工程(十)

    2023-12-06 07:26:01       47 阅读
  5. 软件工程 复习笔记

    2023-12-06 07:26:01       54 阅读
  6. 第18关 K8s数据安全无忧——持久化存储详解

    2023-12-06 07:26:01       85 阅读
  7. Ubuntu22 安装 mysql5.7 过程记录

    2023-12-06 07:26:01       54 阅读
  8. Redis使用Lua脚本

    2023-12-06 07:26:01       62 阅读
  9. ubuntu 修改系统时间,解决更新软件报错问题

    2023-12-06 07:26:01       70 阅读
  10. Flink入门之DataStream API及kafka消费者

    2023-12-06 07:26:01       63 阅读