- 消息组接到某项目组反馈,topic 在扩容后出现部分队列无法被消费者,导致消息积压,影响线上业务? 考虑到该问题是发送在真实的线上环境,为了避免泄密,本文先在笔者的虚拟机中来重现问题。 本节目录 1、案情回顾1.1 集群现状1.2、RocketMQ 在线扩容队列1.3 消息发送 2、问题暴露3、问题分析4、问题复盘 1、案情回顾 1.1 集群现状 ... 消息组接到某项目组反馈,topic 在扩容后出现部分队列无法被消费者,导致消息积压,影响线上业务? 考虑到该问题是发送在真实的线上环境,为了避免泄密,本文先在笔者的虚拟机中来重现问题。 本节目录 1、案情回顾1.1 集群现状1.2、RocketMQ 在线扩容队列1.3 消息发送 2、问题暴露3、问题分析4、问题复盘 1、案情回顾 1.1 集群现状 ...
- 1、初识 Kafka Producer 生产者 2、源码分析 Kafka 消息发送流程(文末附流程图) 3、KafkaProducer Sender 线程详解(含详细的执行流程图) 4、初始 Kafka Consumer 消费者 5、源码分析Kafka 消息拉取流程 6、Kafka与RocketMQ性能对比大揭秘 1、初识 Kafka Producer 生产者 2、源码分析 Kafka 消息发送流程(文末附流程图) 3、KafkaProducer Sender 线程详解(含详细的执行流程图) 4、初始 Kafka Consumer 消费者 5、源码分析Kafka 消息拉取流程 6、Kafka与RocketMQ性能对比大揭秘
- image.png 测试数据准备 在正式开始之前,请先下载好上述所需要的文件。我们首先用命令docker-compose up -d启动docker。我们可以利用以下命令从 Terminal 进入 Mysql 容器之中,并插入相应的数据。 docker exec -it mysql bash -c 'mysql -uroot -p123456' 在 Mysql ... image.png 测试数据准备 在正式开始之前,请先下载好上述所需要的文件。我们首先用命令docker-compose up -d启动docker。我们可以利用以下命令从 Terminal 进入 Mysql 容器之中,并插入相应的数据。 docker exec -it mysql bash -c 'mysql -uroot -p123456' 在 Mysql ...
- 幂等性+ack-1+事务 Kafka数据重复,可以再下一级:SparkStreaming、redis或者hive中dwd层去重,去重的手段:分组、按照id开窗只取第一个值; Kafka数据重复怎么处理? 在下一级消费者中去重。(redis、SparkStreaming) 二、重复消费问题: 即上述 消费方第1种情况—consumer在从broker读取消息后等消费完再comm... 幂等性+ack-1+事务 Kafka数据重复,可以再下一级:SparkStreaming、redis或者hive中dwd层去重,去重的手段:分组、按照id开窗只取第一个值; Kafka数据重复怎么处理? 在下一级消费者中去重。(redis、SparkStreaming) 二、重复消费问题: 即上述 消费方第1种情况—consumer在从broker读取消息后等消费完再comm...
- 1)如果MR造成系统宕机。此时要控制Yarn同时运行的任务数,和每个任务申请的最大内存。调整参数: yarn.scheduler.maximum-allocation-mb(单个任务可申请的最多物理内存量,默认是8192MB) 2)如果写入文件过量造成NameNode宕机。那么调高Kafka的存储大小,控制从Kafka到HDFS的写入速度。高峰期的时候用Kafka进行缓存,高峰... 1)如果MR造成系统宕机。此时要控制Yarn同时运行的任务数,和每个任务申请的最大内存。调整参数: yarn.scheduler.maximum-allocation-mb(单个任务可申请的最多物理内存量,默认是8192MB) 2)如果写入文件过量造成NameNode宕机。那么调高Kafka的存储大小,控制从Kafka到HDFS的写入速度。高峰期的时候用Kafka进行缓存,高峰...
- 10 Kafka丢不丢数据 Ack=0,相当于异步发送,消息发送完毕即offset增加,继续生产。 Ack=1,leader收到leader replica 对一个消息的接受ack才增加offset,然后继续生产。 Ack=-1,leader收到所有replica 对一个消息的接受ack才增加offset,然后继续生产。 kafka 如何保证数据不丢失 kafka的分区策略==... 10 Kafka丢不丢数据 Ack=0,相当于异步发送,消息发送完毕即offset增加,继续生产。 Ack=1,leader收到leader replica 对一个消息的接受ack才增加offset,然后继续生产。 Ack=-1,leader收到所有replica 对一个消息的接受ack才增加offset,然后继续生产。 kafka 如何保证数据不丢失 kafka的分区策略==...
- 在 Kafka内部存在两种默认的分区分配策略:Range和 RoundRobin。 Range是默认策略。Range是对每个Topic而言的(即一个Topic一个Topic分),首先对同一个Topic里面的分区按照序号进行排序,并对消费者按照字母顺序进行排序。然后用Partitions分区的个数除以消费者线程的总数来决定每个消费者线程消费几个分区。如果除不尽,那么前面几个消费者... 在 Kafka内部存在两种默认的分区分配策略:Range和 RoundRobin。 Range是默认策略。Range是对每个Topic而言的(即一个Topic一个Topic分),首先对同一个Topic里面的分区按照序号进行排序,并对消费者按照字母顺序进行排序。然后用Partitions分区的个数除以消费者线程的总数来决定每个消费者线程消费几个分区。如果除不尽,那么前面几个消费者...
- 19 Kafka参数优化 1)Broker参数配置(server.properties) 1、网络和io操作线程配置优化 broker处理消息的最大线程数(默认为3) num.network.threads=cpu核数+1 broker处理磁盘IO的线程数 num.io.threads=cpu核数*2 2、log数据文件刷盘策略 每当producer写入10000条消息时,刷数... 19 Kafka参数优化 1)Broker参数配置(server.properties) 1、网络和io操作线程配置优化 broker处理消息的最大线程数(默认为3) num.network.threads=cpu核数+1 broker处理磁盘IO的线程数 num.io.threads=cpu核数*2 2、log数据文件刷盘策略 每当producer写入10000条消息时,刷数...
- Spark Streming的特性 易用、容错、易整合 Spark Streaming 对比 Storm & SparkStreaming Storm 开发语言 Scala Clojure 编程模型3 DStream Spout/Bolt 实时性 准实时,批处理 实时流处理 Spark Streming编程实战 开发流程: 1、构建sparkCon... Spark Streming的特性 易用、容错、易整合 Spark Streaming 对比 Storm & SparkStreaming Storm 开发语言 Scala Clojure 编程模型3 DStream Spout/Bolt 实时性 准实时,批处理 实时流处理 Spark Streming编程实战 开发流程: 1、构建sparkCon...
- 创建主题: ./kafka-topics.sh --create --topic topic_zkx --partitions 2 --replication-factor 2 --zookeeper host1:24002/kafka 查看主题: ./kafka-topics.sh --list --zookeeper host1:24002/kafka 修改主题: ./ka... 创建主题: ./kafka-topics.sh --create --topic topic_zkx --partitions 2 --replication-factor 2 --zookeeper host1:24002/kafka 查看主题: ./kafka-topics.sh --list --zookeeper host1:24002/kafka 修改主题: ./ka...
- image.png 错误,注释掉速度非常快 image.png image.png 这个错误很常见 image.png 创建producer的是在driver端创建,但是foreach具体执行的时候在executor, 封装的对象发送到executor不能被序列化,所以不能使用。 image.png 解决思路:把p... image.png 错误,注释掉速度非常快 image.png image.png 这个错误很常见 image.png 创建producer的是在driver端创建,但是foreach具体执行的时候在executor, 封装的对象发送到executor不能被序列化,所以不能使用。 image.png 解决思路:把p...
- nohup /export/servers/kafka_2.11-1.0.0/bin/kafka-server-start.sh /export/servers/kafka_2.11-1.0.0/config/server.properties > /dev/null 2>&1 & 关闭 bin/kafka-server-stop.sh 3.10.3 创建topic bin/k... nohup /export/servers/kafka_2.11-1.0.0/bin/kafka-server-start.sh /export/servers/kafka_2.11-1.0.0/config/server.properties > /dev/null 2>&1 & 关闭 bin/kafka-server-stop.sh 3.10.3 创建topic bin/k...
- 一、简介 1.1 概述 Kafka是最初由Linkedin公司开发,是一个分布式、分区的、多副本的、多订阅者,基于zookeeper协调的分布式日志系统(也可以当做MQ系统),常见可以用于web/nginx日志、访问日志,消息服务等等,Linkedin于2010年贡献给了Apache基金会并成为顶级开源项目。 主要应用场景是:日志收集系统和消息系统。 Kafka主... 一、简介 1.1 概述 Kafka是最初由Linkedin公司开发,是一个分布式、分区的、多副本的、多订阅者,基于zookeeper协调的分布式日志系统(也可以当做MQ系统),常见可以用于web/nginx日志、访问日志,消息服务等等,Linkedin于2010年贡献给了Apache基金会并成为顶级开源项目。 主要应用场景是:日志收集系统和消息系统。 Kafka主...
- 本文将从,Kafka、RabbitMQ、ZeroMQ、RocketMQ、ActiveMQ 17 个方面综合对比作为消息队列使用时的差异。 一、资料文档 Kafka:中。有kafka作者自己写的书,网上资料也有一些。rabbitmq:多。有一些不错的书,网上资料多。zeromq:少。没有专门写zeromq的书,网上的资料多是一些代码的实现和简单介绍。rocketmq:少... 本文将从,Kafka、RabbitMQ、ZeroMQ、RocketMQ、ActiveMQ 17 个方面综合对比作为消息队列使用时的差异。 一、资料文档 Kafka:中。有kafka作者自己写的书,网上资料也有一些。rabbitmq:多。有一些不错的书,网上资料多。zeromq:少。没有专门写zeromq的书,网上的资料多是一些代码的实现和简单介绍。rocketmq:少...
- 本篇博主带来的是Kafka和zookeeper群起脚本的创建与使用。 目录 一. Zookeeper1. 一键启动脚本2. 一键关闭脚本 二. Kafka1. 启动2. 关闭 之前介绍过Kafka集群环境的搭建,但是细心的朋友们都发现,Kafka与ZooKeeper一样,都需要在每台节点上执行对应的开启/关闭脚本,十分的不方便。现在... 本篇博主带来的是Kafka和zookeeper群起脚本的创建与使用。 目录 一. Zookeeper1. 一键启动脚本2. 一键关闭脚本 二. Kafka1. 启动2. 关闭 之前介绍过Kafka集群环境的搭建,但是细心的朋友们都发现,Kafka与ZooKeeper一样,都需要在每台节点上执行对应的开启/关闭脚本,十分的不方便。现在...
上滑加载中
推荐直播
-
基于开源鸿蒙+海思星闪开发板:嵌入式系统开发实战(Day1)
2025/03/29 周六 09:00-18:00
华为开发者布道师
本次为期两天的课程将深入讲解OpenHarmony操作系统及其与星闪技术的结合应用,涵盖WS63E星闪开发板的详细介绍、“OpenHarmony+星闪”的创新实践、实验环境搭建以及编写首个“Hello World”程序等内容,旨在帮助学员全面掌握相关技术并进行实际操作
回顾中 -
基于开源鸿蒙+海思星闪开发板:嵌入式系统开发实战(Day2)
2025/03/30 周日 09:00-12:00
华为开发者布道师
本次为期两天的课程将深入讲解OpenHarmony操作系统及其与星闪技术的结合应用,涵盖WS63E星闪开发板的详细介绍、“OpenHarmony+星闪”的创新实践、实验环境搭建以及编写首个“Hello World”程序等内容,旨在帮助学员全面掌握相关技术并进行实际操作
回顾中 -
从AI基础到昇腾:大模型初探、DeepSeek解析与昇腾入门
2025/04/02 周三 16:00-17:30
不易 / 华为云学堂技术讲师
昇腾是华为研发的AI芯片,其具有哪些能力?我们如何基于其进行开发?本期直播将从AI以及大模型基础知识开始,介绍人工智能核心概念、昇腾AI基础软硬件平台以及昇腾专区,旨在为零基础或入门级学习者搭建从AI基础知识到昇腾技术的完整学习路径。
回顾中
热门标签