当前位置: 首页 > article >正文

Kafka学习篇

Architecture

系统间解耦,异步通信,削峰填谷
Topic 消息主题,用于存储消息
Partition 分区,通过扩大分区,可以提高存储量
Broker 部署Kafka服务的设备
Leader kafka主分区
Follwer kafka从分区
高性能之道:
读:零拷贝技术,sendfile
写:顺序写+ 内存映射文件,mmap

Config

Producer
ack&&retry机制
ack配置参数
0表示生产者只要将消息发出就认为发送成功,不会等待任何回复,性能最高
1表示生产者发出消息后,会等待Leader回复,收到回复后认为发送成功
all表示生产者发出消息后,会等待Leader和所有Follwer回复,才认为发送成功,最可靠
retry 发送失败重试
idempotence 幂等性配置
transaction-id 事务id配置,确保事务id唯一
batch-size 批处理大小
buffer-memory 缓冲区内存大小
key-serializer key 序列化
value-serializer value 序列化
Consumer
group-id 组id
auto-offset-reset 配置消费位置
earliest 表示从最早的位置开始消费
latest 表示从最新的下一个偏移位置消费
none 根据最近一次提交位置消费,没有提交位报错
enable-auto-commit 是否开启自动提交
auto-commit-interval 自动提交间隔
transaction-isolation-level 配置事务隔离级别
key-deserializer key 反序列化
value-deserializer value 反序列化

HW & LE

早期使用HW截断处理了可能会造成丢失数据和数据不一致问题
0.11版本以后使用LE,不会直接截断,会根据leader返回的版本进行判断是否截断,从而避免了数据丢失和不一致问题


http://www.kler.cn/a/447581.html

相关文章:

  • 2014年IMO第4题
  • java 基于冷热数据分离的思想设计LRU链表
  • 使用CNN模型训练图片识别(键盘,椅子,眼镜,水杯,鼠标)
  • harmony UI组件学习(1)
  • aioice里面candidate固定UDP端口测试
  • 【计算机网络】期末考试预习复习|中
  • 如何使用Python编写有效的网页抓取脚本以获取和处理数据?
  • blender生成城市白膜数据
  • 云技术基础
  • cisp-pte培训需要多久
  • JAVA开发Erp时日志报错:SQL 当 IDENTITY_INSERT 设置为 OFF 时,不能为表 ‘***‘ 中的标识列插入显式值
  • 【5G】5G 无线协议 Radio Protocols(一)
  • 【大语言模型】ACL2024论文-30 探索语言模型在文本分类中的伪相关性:概念层面的分析
  • clickhouse-题库
  • VSCode中的Black Formatter没有生效的解决办法
  • 云计算赋能:TSP 问题求解与创新定价机制的全景剖析
  • MFC/C++学习系列之简单记录10——定时器
  • 基于SpringBoot+Vue的音乐网站-无偿分享 (附源码+LW+调试)
  • LSTM实现天气模型训练与预测
  • 编译原理复习---运行存储分配
  • 化工行业SAP管理系统:构建未来可持续生产模式的基石
  • 【新立电子】FPC的未来展望:柔性电子技术的无限可能
  • Python数学运算
  • jquery弹性动画特效插件DomLastic.js
  • 基于cobra开发的k8s命令行管理工具k8s-manager
  • Redis篇--常见问题篇9--其他一些问题