测试基础|记一次CPU冲高的排查过程!

news2024/9/21 5:50:00

背景

需求需要计算大容量环境下多个数据库数据的负载,并把分库关系迁移,以实现多个数据库节点负载均衡。

现象

执行分库迁移脚本后,脚本执行进度始终保持 10%,组件 CPU 使用率冲到 95% 以上,且后台没有打印出有用的日志。

图片

排查过程

  1. 尝试重启组件并重写执行脚本:判断该故障是否可复现。结论:故障可以复现。

  2. 查看新增代码:发现新增代码量太大,若进行全面代码走查将耗费大量时间,且由于后台日志较少,增加了代码走查的难度。

  3. 使用 arthas 工具排查

    3.1 编译并打包 arthas,然后将其部署到节点上。

    3.2 通过kubectl -n zenap cp {arthas-path} {pod}:{任意路径}命令将 arthas 拷贝到容器中。

    3.3 进入容器内的 arthas 目录,执行java -jar arthas-boot.jar,并选择容器中运行的 java 进程 pid。

    3.4 使用 arthas 提供的命令进行问题排查,首先执行dashboard命令查看面板。

    - 发现pool-47-thread-1线程占用 CPU 90.98%,疑似进入死循环。

    图片

    3.5 继续执行thread -n 3命令找到该线程,查看其堆栈信息。

    - 发现占用 CPU 的线程堆栈中,LoadMigrateJobregularMigrate方法存在问题。

图片

代码问题定位

图片

- 在while循环中,第二个if逻辑判断如果网元以cn.me开头且配置为False,则会继续循环。

- 但是,循环内没有对detailLoadsInOneDB_out进行任何增减操作,导致每次循环都会走continue流程,从而引发死循环。

- 这就是为什么 CPU 使用率会一直冲高。

最后感谢每一个认真阅读我文章的人,看着粉丝一路的上涨和关注,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走! 

软件测试面试文档

我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2106426.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【安当产品应用案例100集】015-企业内部CA管理体系的构建与实践

CA证书,想必大家都不陌生。在身份验证、加密通信、数据完整性、法律合规及企业内部信任等多个场景中,都扮演着至关重要的角色。它是保障在线交易、通信安全、身份验证和法律合规等方面不可或缺的技术工具。通过CA证书,企业和个人可以构建一个…

ACP绿光激光模组在工业领域发挥的重要作用

在当今这个高度自动化与精密制造并行的时代,激光技术作为现代工业的核心驱动力之一,正以前所未有的速度改变着我们的生产方式。其中,ACP绿光激光模组以其独特的优势,在工业领域中发挥着不可替代的重要作用,成为推动产业…

PPT分享:华为数据、应用、技术架构设计方法(干货)

PPT下载链接见文末~ 华为作为一家全球领先的信息与通信技术(ICT)解决方案供应商,其企业架构的设计涉及业务架构、数据架构、应用架构及技术架构等多个层面,这些架构共同构成了华为数字化转型和持续创新的基础。以下结合PPT内容&a…

cesium 加载模型动画最详细版

加载模型有俩种方法 primitives和entities。新版的目前 "cesium": "^1.119.0",又有更新,以下以次距离。 新版的primitive async addAnimatedPrimityModel(lngLatHeight, option) {const position Cesium.Cartesian3.fromDegrees(lngLatHeight…

GatewayWorker框架的详解和应用

一、介绍 1. 简介 GatewayWorker基于Workerman开发的一个项目框架,用于快速开发TCP长连接应用,例如app推送服务端、即时IM服务端、游戏服务端、物联网、智能家居等等 GatewayWorker使用经典的Gateway和Worker进程模型。Gateway进程负责维持客户端连接…

代码随想录——柱状图中最大的矩形(Leetcode 84)

题目链接 我的解法(暴力) 果不其然,超时是暴力解法的宿命… 双层for循环真的很好懂,每次解题都感觉我应该是一个单细胞生物… class Solution {public int largestRectangleArea(int[] heights) {int max 0;for(int i 0; i …

Java高效透明可靠 同城搬家系统小程序源码

高效透明可靠 —— 同城搬家系统 🚚【开篇:告别繁琐,迎接高效搬家新时代】🚚 搬家,对于很多人来说,都是一件既期待又头疼的事情。期待新家的温馨与美好,却又头疼于搬家的繁琐与复杂。但今天&a…

西湖大学卢培龙团队突破:精确从头设计异手性蛋白复合物,开启镜像蛋白研究新篇章

在生物科学的浩瀚星空中,蛋白质作为生命活动的基本承担者,其设计与合成一直是科学家们不懈探索的领域。近日,西湖大学卢培龙团队携手清华大学刘磊团队,在《Cell Research》期刊上发表了一项革命性的研究成果——首次实现了异手性蛋…

自组网融合通信方案技术详解

自组网(Ad Hoc Network),又称无中心网络或多跳网络,是一种无需固定基础设施支持,由多个动态节点自组织形成的临时性通信网络。它具备高度的灵活性和鲁棒性,能够在复杂多变的环境中快速部署和自适应调整。自…

如何解决ValueError: could not convert string to float: ‘无数据‘

下面是一个Python脚本,用于检查数据中哪些列包含“无数据”字符串,并打印出这些列的名称和它们在数据集中的位置。 import pandas as pd# 加载数据(替换为你的数据就行) data pd.read_excel(WT10_operating_data.xlsx, engineope…

推荐一款开源、高效、灵活的Redis桌面管理工具:Tiny RDM!支持调试与分析功能!

1、引言 在大数据和云计算快速发展的今天,Redis作为一款高性能的内存键值存储系统,在数据缓存、实时计算、消息队列等领域发挥着重要作用。然而,随着Redis集群规模的扩大和复杂度的增加,如何高效地管理和运维Redis数据库成为了许…

监控文件文件夹被删除修改用哪个软件好

文件和文件夹的删除修改是很常见的操作,那么为什么需要监控它呢?自己使用的电脑可能对这方面的需求比较少,但是工作上的电脑一般都会有多个人去使用的,有时候一些文件或文件夹可能会被别个删除或修改,那么监控这些记录…

云计算之数据库

目录 一、RDS产品介绍及排障思路 1.1 云RDS数据库及其特点 1.2 云RDS数据库-规格 1.3 云RDS数据库-存储 ​1.4 云RDS数据库-安全 ​1.5 云RDS数据库-整体架构 1.6 RDS常见问题排查 ​1.6.1 如何解决无法链接RDS实例的问题 1.6.2 RDS实例存储空间使用率高,怎…

比特币客户端和API

1. 比特比客户端的安装 Bitcoin Core 客户端适用于从 x86 Windows 到 ARM Linux 的不同架构和平台,如下图所示: 2. Bitcoin Core客户端的类型 2.1 Bitcoind Bitcoind 末尾的字母 d 表示 daemon (守护程序)。所谓守护程序,就是指常…

【完美解决】电脑蓝屏 驱动丢失或包含错误问题的解决办法

电脑开机出现了蓝屏报错进入恢复页: 无法加载操作系统,原因是关键系统驱动程序丢失或包含错误 文件 \windows\system32\XXXXX 错误代码:XXXX 重启无数次也不行,安全模式进不去,修复也不行 查了一圈,尝试了…

【深度学习详解】Task3 实践方法论-分类任务实践 Datawhale X 李宏毅苹果书 AI夏令营

前言 综合之前的学习内容, 本篇将探究机器学习实践方法论 出现的问题及其原因 🍎 🍎 🍎 系列文章导航 【深度学习详解】Task1 机器学习基础-线性模型 Datawhale X 李宏毅苹果书 AI夏令营 【深度学习详解】Task2 分段线性模型-引入…

南通网站建设手机版网页

随着移动互联网的迅猛发展,越来越多的人通过手机浏览网页,进行在线购物、信息查询和社交互动。因此,建立一个适合移动端访问的网站已成为企业和个人不可忽视的重要任务。在南通,网站建设手机版网页的需求逐渐增加,如何…

springboot整合Logback

Logback介绍 描述 Logback是由log4j创始人设计的另外一种开源日志组件,性能比log4j要好。相对是一个可靠、通用、快速而又灵活的Java日志框架。 Logback主要分三个模块 1、logback-core:其他两个模块的基础模块 2、logback-classic:它是lo…

基于AIM平台实现对SAP PO平台的监控告警管理及WeLink告警案例

一、客户背景 某集团基于SAP PO平台统一管理的接口量较大,为了方便团队进行后期维护和管理,固上此AIM监控平台系统,用于接口日常运行、SAP PO各类型指标和系统性能方面的监控,多种告警类型渠道满足各种用户需求,采用…

ESP8266下载固件→连接阿里云

一、工具准备 1、ESP8266Wifi模块 2、ESP8266下载器 ESP8266-01模块 二、固件配置 CH340串口工具-烧录ESP8266-01固件_esp8266 ch340烧录-CSDN博客文章浏览阅读444次,点赞6次,收藏3次。CH340会有供电不足的问题,因此需要外部供电_esp…