| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 大数据 -> Kafka理解 -> 正文阅读 |
|
[大数据]Kafka理解 |
1、 1、主要是生产速度和消费速度的关系 对于生产者来说:他只会往队列里发送消息,没有满的概念。 对于消费者来说:是以消费者组即CG来消费消息的,并且一个partition只允许一个消费者组内的一个消费者消费。正常是消费者的速度大于生产者生产的速度。 正常对于一个partition来说,消费者的指针是指向最开始的位置即head,表示队列里没有未消费的消息,当消费者速度变慢(下游阻塞/网络等问题)或者生产者速度变快(流量增加等),则消费者的指针会向后移动,即表示队列里未消费的消息在不断增加,当达到某个阈值时产生消息积压的报警。 对于visage来说:整个集群的机器所有服务都是一样的,部署的同一个代码,表示属于同一个CG。 解决消息积压的方法:方法一、增加partition来促使生产速度变慢,例如由原来的5个增加10 方法二、增加并发度,这个是mafka的性质,kafka的话需要研究下。增加并发度需要看下机器的配置和性能,性能不满足的话增加可能导致消息挤压变大。 方法三、当partition数量多于消费者数量时,可以通过增加消费者提高消费速度,当partition数量少于消费者数量时,表示还有消费者处于空闲状态,在增加消费者没有意义。 正常的kafka能保证同一个partition内消息有序,同一个topic的多个partition不保证有序,这是适用于对消息顺序没要求的场景。 当对同一个topic的消息有顺序要求,例如需要先下单在支付等,可以通过该topic内只有一个partition的办法,或者其他方法。 |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2025年1日历 | -2025/1/28 10:28:46- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |