【大数据学习 | kafka高级部分】kafka的数据同步和数据均衡
1. 数据同步

通过上图我们发现每个分区的数据都不一样,但是三个分区对外的数据却是一致的
这个时候如果第二个副本宕机了

但是如果是leader副本宕机了会发生什么呢?

2. 数据均衡
在线上程序运行的时候,有的时候因为上面副本的损坏,从而系统会自动选举出来一个新的leader并且分配到不同的节点上,有的时候这个leader的节点分布的并不是特别均匀,这个时候就需要进行均衡一下,使得每个broker的节点压力均衡
这个时候需要以下三个参数进行控制
| 参数 | 解释 |
|---|---|
| auto.leader.rebalance.enable | 系统每隔300s会自动检查系统的leader分布是否均匀,如果不均匀会自动进行leader的切换 |
| leader.imbalance.per.broker.percentage | broker上的leader比例超过10%认为不均衡 |
| leader.imbalance.check.interval.seconds | 检查间隔300s默认值 |
auto.leader.rebalance.enable 这个开关开启会自动选举或者切换leader节点,并且分布在不同的节点上,但是有的时候这个开关开启会影响系统性能,因为线上环境切换leader是比较繁琐的
但是不开的话可能会出现启动kafka而没有leader分区的情况
一般我们会关闭这个开关并且选择手动切换均衡
kafka-leader-election.sh --bootstrap-server hadoop106:9092 --topic topic_a --partition 1 --election-type preferred
优先在ISR中选举出来新的leader进行负载
并且我们也可以自己进行副本的位置进行设定
# 首先创建一个topic.json 输入如下内容
{"topics":[{"topic":"topic_a"}],"version":1}
# 整体代码命令如下
kafka-reassign-partitions.sh --bootstrap-server nn1:9092 --broker-list 0,1,2,3,4 --topics-to-move-json-file topic.json --generate
使用这个均衡优化命令生成优化计划
{"version":1,"partitions":[{"topic":"topic_a","partition":0,"replicas":[3,4,0],"log_dirs":["any","any","any"]},{"topic":"topic_a","partition":1,"replicas":[4,0,1],"log_dirs":["any","any","any"]},{"topic":"topic_a","partition":2,"replicas":[0,1,2],"log_dirs":["any","any","any"]},{"topic":"topic_a","partition":3,"replicas":[1,2,3],"log_dirs":["any","any","any"]}]}
修改其中副本的位置
并且设定ISR的优先顺序
相关文章:
【大数据学习 | kafka高级部分】kafka的数据同步和数据均衡
1. 数据同步 通过上图我们发现每个分区的数据都不一样,但是三个分区对外的数据却是一致的 这个时候如果第二个副本宕机了 但是如果是leader副本宕机了会发生什么呢? 2. 数据均衡 在线上程序运行的时候,有的时候因为上面副本的损坏ÿ…...
微擎框架php7.4使用phpexcel导出数据报错修复
在使用微擎社区版时,用phpexcel导出数据,提示错误,经过搜索后得知是php版本问题。 之前一直是用的5.6现在改成了7.4。所以才发现了这个问题。 然后去gitee上看了下微擎官方的代码,好像也没有对这个问题进行修复。 找了下&#…...
Netty实现WebSocket Server是否开启压缩深度分析
是否开启压缩会直接影响与客户端是否能够成功握手。 一、具体分析 通常客户端发起与Websocket连接一般是以下形式。 1)包含6个必要的Header Request Headers Sec-WebSocket-Version: 13 Sec-WebSocket-Key: Nlpc0kiHFjRom5/62lj8bA Connection: Upgrade Upgrade…...
【Xrdp联机Ubuntu20.04实用知识点补充】
简单归纳了Xrdp远程连接可能会出现的问题 文章目录 一、网络篇二、Ubuntu远程联机一段时间后莫名奇妙断开Ubuntu20.04禁用休眠配置禁用挂起配置 三、refresh界面频繁刷新四、Authentication is required to create a color profile参考文章总结 一、网络篇 ip addr show eth0接…...
【电脑】解决DiskGenius调整分区大小时报错“文件使用的簇被标记为空闲或与其它文件有交叉”
【电脑】解决DiskGenius调整分区大小时报错“文件使用的簇被标记为空闲或与其它文件有交叉” 零、报错 在使用DiskGenius对磁盘分区进行调整时,DiskGenius检查出磁盘报错,报错信息:文件使用的簇被标记为空闲或与其它文件有交叉,…...
IDC机房服务器托管的费用组成
IDC机房服务器托管的费用,并不是只有我们所想的电费而已,还有一些其它费用组成,详细来看: 1. 机位费用: - 机位费用是根据服务器的尺寸和占用的空间来计算的。服务器通常按照U(Unit)的高度来…...
Halcon深度学习网络模型简介
HALCON为分类和语义分割提供了预训练的神经网络。当训练自定义网络时,这些神经网络是很好的起点。它们已经在一个大型图像数据集上进行了预训练。对于异常检测,HALCON提供了初始模型。 用于 3D 抓取点检测的模型 为 3D 抓取点检测提供了以下网络…...
ROM修改进阶教程------安卓14 安卓15去除app签名验证的几种操作步骤 详细图文解析
在安卓14 安卓15的固件中。如果修改了系统级别的app。那么就会触发安卓14 15的应用签名验证。要么会导致修改的固件会进不去系统,或者进入系统有bug。博文将从几方面来解析去除安卓14 15应用签名验证的几种方法。 💝💝💝通过博文了解: 1💝💝💝-----安卓14去除…...
基于集成Whisper 与 Pepper-GPT改进人机交互体验并实现顺畅通信
摘要 随着技术以令人眼花缭乱的速度发展,使人机交互更加顺畅比以往任何时候都更加重要。为了应对这一挑战,一个新领域应运而生:人机交互(HRI)。有效的人机交互被认为是实现技术效益的关键。 用户体验(UX&…...
C++设计模式精选面试题及参考答案
目录 什么是单例模式?它的应用场景是什么?如何保证单例模式线程安全? 什么是工厂方法模式?如何与简单工厂模式进行比较? 抽象工厂模式和工厂方法模式有什么区别?请给出实际应用场景。 什么是建造者模式?它和工厂模式有什么不同? 在什么情况下使用单例模式?如何在…...
Linux下的vim和gdb
vim: vim是编译功能强大,多模式的编译器。实际中vim有很多种模式,但是常用的就三种模式: 1、正常/普通/命令模式(Normal mode)控制屏幕光标的移动,字符、字或行的删除,移动复制某区段及进入Insert mode下…...
(蓝桥杯C/C++)——搜索
一、回溯法 1.回溯法简介 回溯法一般使用 ** DFS(深度优先搜索) ** 实现,DFS是一种遍历或搜索图、树或图像等数据结构的算法,当然这个图、树未必要存储下来(隐式处理就是回溯法),常见的是通过某种关系构造出的搜索树,搜索树一般…...
【网页设计】HTML5 和 CSS3 提高
目标 能够说出 3~5 个 HTML5 新增布局和表单标签能够说出 CSS3 的新增特性有哪些 1. HTML5 的新特性 注:该部分所有内容可参考菜鸟教程菜鸟教程 - 学的不仅是技术,更是梦想! (runoob.com) HTML5 的新增特性主要是针对于以前的不足…...
FastGPT部署通义千问Qwen和智谱glm模型|OneAPI配置免费的第三方API
继这篇博客之后 从零开始FastGPT本地部署|Windows 有同学问,不想在多个平台申请API-Key,不好管理且要付费,有木有白嫖方案呀? 答:有啊。用硅基流动。 注册方法看这篇 【1024送福利】硅基流动送2000万token啦࿰…...
https网站 请求http图片报错:net::ERR_SSL_PROTOCOL_ERROR
问题描述 场景: https网站,请求http图片资源报错:net::ERR_SSL_PROTOCOL_ERROR 原因: Chrome 81 中,对混合内容资源加载策略进行了改变,会自动升级到 https:// ,如果无法通过 https:// 加载&am…...
攻防世界38-FlatScience-CTFWeb
攻防世界38-FlatScience-Web 点开这个here看到一堆pdf,感觉没用,扫描一下 试试弱口令先 源码里有: 好吧0.0 试试存不存在sql注入 根本没回显,转战login.php先 输入1’,发现sql注入 看到提示 访问后得源码 <?php ob_start(); ?>…...
探索 JNI - Rust 与 Java 互调实战
真正的救赎,并非厮杀后的胜利,而是能在苦难之中,找到生的力量和内心的安宁。 ——加缪Albert Camus 一、Rust Java ? Java 和 Rust 是两种现代编程语言,各自具有独特的优势,适用于不同的应用场景。 1、…...
网络安全-Linux基础(bash脚本)
文章目录 bash脚本编写基础使用的脚本解析器/bin/bash(声明)bash脚本需要拥有执行权限bash脚本语法输入与输出函数的封装条件判断语句条件符号 循环语句模块化编程 Linux进程操作查看寻找进程终止进程暂停与恢复进程后台运行 bash脚本编写系统内存资源占…...
Lucene 和 Elasticsearch 中更好的二进制量化 (BBQ)
作者:来自 Elastic Benjamin Trent Lucene 和 Elasticsearch 中更好的二进制量化 (BBQ)。 嵌入模型输出 float32 向量,通常对于高效处理和实际应用来说太大。Elasticsearch 支持 int8 标量量化,以减小向量大小,同时保持性能。其他…...
jmeter基础05_第1个http请求
本节课使用网站“httpbin.org”进行基础的http请求全流程。 请求获取httpbin.org的首页: 请求方法:GET URL:http://httpbin.org 参数:无 1、操作步骤 ① 打开jmeter:命令行窗口输入“jmeter”并回车。 ② 添加线程组…...
Appium+python自动化(十六)- ADB命令
简介 Android 调试桥(adb)是多种用途的工具,该工具可以帮助你你管理设备或模拟器 的状态。 adb ( Android Debug Bridge)是一个通用命令行工具,其允许您与模拟器实例或连接的 Android 设备进行通信。它可为各种设备操作提供便利,如安装和调试…...
使用分级同态加密防御梯度泄漏
抽象 联邦学习 (FL) 支持跨分布式客户端进行协作模型训练,而无需共享原始数据,这使其成为在互联和自动驾驶汽车 (CAV) 等领域保护隐私的机器学习的一种很有前途的方法。然而,最近的研究表明&…...
Objective-C常用命名规范总结
【OC】常用命名规范总结 文章目录 【OC】常用命名规范总结1.类名(Class Name)2.协议名(Protocol Name)3.方法名(Method Name)4.属性名(Property Name)5.局部变量/实例变量(Local / Instance Variables&…...
鸿蒙中用HarmonyOS SDK应用服务 HarmonyOS5开发一个医院查看报告小程序
一、开发环境准备 工具安装: 下载安装DevEco Studio 4.0(支持HarmonyOS 5)配置HarmonyOS SDK 5.0确保Node.js版本≥14 项目初始化: ohpm init harmony/hospital-report-app 二、核心功能模块实现 1. 报告列表…...
css的定位(position)详解:相对定位 绝对定位 固定定位
在 CSS 中,元素的定位通过 position 属性控制,共有 5 种定位模式:static(静态定位)、relative(相对定位)、absolute(绝对定位)、fixed(固定定位)和…...
SpringCloudGateway 自定义局部过滤器
场景: 将所有请求转化为同一路径请求(方便穿网配置)在请求头内标识原来路径,然后在将请求分发给不同服务 AllToOneGatewayFilterFactory import lombok.Getter; import lombok.Setter; import lombok.extern.slf4j.Slf4j; impor…...
Unity | AmplifyShaderEditor插件基础(第七集:平面波动shader)
目录 一、👋🏻前言 二、😈sinx波动的基本原理 三、😈波动起来 1.sinx节点介绍 2.vertexPosition 3.集成Vector3 a.节点Append b.连起来 4.波动起来 a.波动的原理 b.时间节点 c.sinx的处理 四、🌊波动优化…...
代理篇12|深入理解 Vite中的Proxy接口代理配置
在前端开发中,常常会遇到 跨域请求接口 的情况。为了解决这个问题,Vite 和 Webpack 都提供了 proxy 代理功能,用于将本地开发请求转发到后端服务器。 什么是代理(proxy)? 代理是在开发过程中,前端项目通过开发服务器,将指定的请求“转发”到真实的后端服务器,从而绕…...
网站指纹识别
网站指纹识别 网站的最基本组成:服务器(操作系统)、中间件(web容器)、脚本语言、数据厍 为什么要了解这些?举个例子:发现了一个文件读取漏洞,我们需要读/etc/passwd,如…...
springboot 日志类切面,接口成功记录日志,失败不记录
springboot 日志类切面,接口成功记录日志,失败不记录 自定义一个注解方法 import java.lang.annotation.ElementType; import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; import java.lang.annotation.Target;/***…...
