Linux常用工具(pidstat stress cgroup)

news2024/7/6 21:12:09

目录

1.pidstat

2.stress

3.cgroup

4.使用cgroup进行内存限制

5.使用cgroup进行cpu使用率控制


1.pidstat

安装和使用(centos):

        yum install sysstats

        yum remove sysstats

pidstat -u(默认),查看进程cpu使用情况:

pidstat -r,查看内存使用情况:

pidstat -d,查看IO相关读写速率。

pidstat -p port,查看指定端口的进程情况:

pidstat -C x,查看指定服务的情况:


2.stress

stress是一个压力检测工具

stress -c x,表示启动x个进程进行cpu压力检测。

stress  -i x,表示启动x个进程进行IO压力检测。

stress -m x --vm-bytes ym,表示启动x个进程进行内存压力检测。

配合pidstat -C stress进行检测。


3.cgroup

cat /proc/filesystems |grep cgroup,查看cgroup相关信息。

cat /proc/cgroups,查看cgroup可以控制那些资源。

cat /proc/$$/cgroup,查看cgroup相关配置。

mount |grep cgroup,查看cgroup配置文件位置。


4.使用cgroup进行内存限制

首先找到memory内存相关配置文件挂载位置

进入该目录

创建新目录

查看当前内存限制,默认非常大

设置20m大小限制

启动stress压力检测,使用pidstat -r -C stress -p ALL查看内存使用情况。

最后将pid写入memory下的tasks文件,完成内存限制。


5.使用cgroup进行cpu使用率控制

同上

关键部分,如何查看cpu利用率限制默认值:

cpu.cfs_period_us表示分母默认100000,cpu.cfs_quota_us表示分子。

cpu.cfs_quota_us默认为-1,表示不受到cgroup影响。

cpu.cfs_quota_us改为20000,利用率为20000/100000=20%;

值得注意的是:cpu设置限制后,stress不会崩溃,而是cpu利用率被强制限制为设定的20%。

                         memory设置限制后,stress则直接崩溃。

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

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

相关文章

Spring MVC: 请求参数的获取

Spring MVC 前言通过 RequestParam 注解获取请求参数RequestParam用法 通过 ServletAPI 获取请求参数通过实体类对象获取请求参数附 前言 在 Spring MVC 介绍中,谈到前端控制器 DispatcherServlet 接收客户端请求,依据处理器映射 HandlerMapping 配置调…

解决 beego上传文件时 报http: no such file 错误

上传时文件上传失败: 关键报错的代码: //获得文件名filename := header.Filename//上传文件//注意,这里SaveToFile参数要跟传入的文件名的key一致,否则就会报http: no such fileerr = f.SaveToFile(filename, "./static/file/"+filename)if err != nil {logs.Error(e…

大数据课程K13——Spark的距离度量相似度度量

文章作者邮箱:yugongshiye@sina.cn 地址:广东惠州 ▲ 本章节目的 ⚪ 掌握Spark的距离度量和相似度度量; ⚪ 掌握Spark的欧氏距离; ⚪ 掌握Spark的曼哈顿距离; ⚪ 掌握Spark的切比雪夫距离; ⚪ 掌握Spark的最小二乘法; 一、距离度量和相似度度量 1. …

linux系统(centos、Ubuntu、银河服务器)备份

制作u盘启动盘 下载usblive系统镜像 Get Kali | Kali Linux 下载u盘启动工具 balenaEtcher - Flash OS images to SD cards & USB drives 点击下载,等待下载完成 双击安装,等待安装完成 双击 启动 选择镜像 选择U盘 开始烧录 等地制作完成 进入…

PowerBuilder连接SQLITE3

PowerBuilder,一个古老的IDE,打算陆续发些相关的,也许还有人需要,内容可能涉及其他作者,但基本都是基于本人实践整理,如涉及归属,请联系. SQLite,轻型数据库,相对与PowerBuilder来说是个新事务,故发数来,以供参考. PB中使用OLE Microsoft OLE DB方式进行连接,如下 // Profile…

苹果启动2024年SRDP计划:邀请安全专家使用定制iPhone寻找漏洞

苹果公司昨天(8月30日)正式宣布开始接受2024 年iPhone安全研究设备计划的申请,iOS 安全研究人员可以在 10 月底之前申请安全研究设备 SRD。 SRD设备是专门向安全研究人员提供的iPhone14Pro,该设备具有专为安全研究而设计的特殊硬…

Message: ‘chromedriver‘ executable may have wrong permissions.

今天运行项目遇到如下代码 driverwebdriver.Chrome(chrome_driver, chrome_optionsoptions)上述代码运行报错如下: Message: chromedriver executable may have wrong permissions. Please see https://sites.google.com/a/chromium.org/chromedriver/home出错的原…

ROS2学习(一):Ubuntu 22.04 安装 ROS2(Iron Irwini)

文章目录 一、ROS2(Iron Irwini)介绍二、ROS2(Iron Irwini)安装1.设置编码2.使能代码库3.安装ROS2 Iron 三、ROS2测试四、ROS2卸载 一、ROS2(Iron Irwini)介绍 官方文档 Iron Irwini版本支持的平台如下: 二、ROS2(Iron Irwini)安装 1.设置编码 sudo apt update…

MyBatis——MyBatis插件原理

摘要 本博文主要介绍MyBatis插件机原理,帮助大家更好的理解和学习MyBatis。 一、插件机制概述 MyBatis 允许你在已映射语句执行过程中的某一点进行拦截调用。默认情况下,MyBatis允许使用插件来拦截的方法调用包括: Executor (update, que…

高级IO(select、poll、epoll)

在介绍本文之前,先提出一个问题 什么是IO? 等数据拷贝 1.等 - IO事件就绪(检测功能成分) 2.数据拷贝 高效的IO就是:单位时间,等的比重越小,IO的效率越高 五种IO模型 IO模型: 阻塞式…

仓库运行状况如何得知?数据挖掘是关键!

库存、订单、出入库记录、物流信息、货物状态等数据,是仓库管理的重要组成部分。 仓库数据的重要性 做好仓库数据管理对企业的重要性不言而喻。通过有效地管理数据,企业可以更好地了解市场需求和库存情况,快速响应市场变化,提高库…

iOS开发Swift-5-自动布局AutoLayout-摇骰子App

1.在iOS坐标系中,以向左、向下为正方向。图片以左上角为基准点。 2.打开之前的摇骰子App,对它的界面做一些适应所有iPhone机型的效果。 3.先对上方logo做一个y轴约束和一个宽高约束。 宽高约束: 水平居中: 对y轴进行约束。将虚线点…

【STM32单片机】STM32F103RCT6 串口1 串口2 串口3 串口4 串口5 初始化,标准库 ,支持printf

文章目录 单片机介绍引脚DMA—直接存储器访问串口 引脚串口1,初始化,发送与接收串口2,初始化,发送与接收串口3,初始化,发送与接收串口4,初始化,发送与接收串口5,初始化&a…

说说Flink on yarn的启动流程

分析&回答 核心流程 FlinkYarnSessionCli 启动的过程中首先会检查Yarn上有没有足够的资源去启动所需要的container,如果有,则上传一些flink的jar和配置文件到HDFS,这里主要是启动AM进程和TaskManager进程的相关依赖jar包和配置文件。接着…

软件架构设计(一) 软件架构的概念

在讲到软件架构的概念时,首先我们要了解到,架构是在做什么样的事情,它在整个软件开发周期中所属什么样的位置。 之前学习软件工程时,我们学到了开发模型,里面涉及到需求分析,概要设计,详细设计,编码,测试。但事实上,没有提到架构这个东西。 为什么这么重要的东西没…

造测试数据

对应sql: from openpyxl import Workbook from faker import Faker# 创建一个Workbook对象 workbook Workbook() # 获取默认的活动工作表 sheet workbook.active# 创建一个Faker对象 fake Faker()# 写入表头 header [Name, Address, Email] sheet.append(heade…

实操教程 | 触发器实现 Apache DolphinScheduler 失败钉钉自动告警

作者 | sqlboy-yuzhenc 背景介绍 在实际应用中,我们经常需要将特定的任务通知给特定的人,虽然 Apache DolphinScheduler 在安全中心提供了告警组和告警实例,但是配置起来相对复杂,并且还需要在定时调度时指定告警组。通过这篇文…

Vert.x 源码解析(4.x)(一)——Future源码解析

目录 1. 简介 在现代的软件开发中,异步编程已经变得非常重要。它可以提高应用程序的并发性能,使应用程序能够更有效地处理大量的并行操作。Vert.x 是一个面向事件驱动、非阻塞的异步编程框架,它提供了丰富的工具来简化异步编程的复杂性。 如…

误删文件恢复怎么做?2023最新方法公布!

“突然感觉闯了大祸,在用朋友的电脑时,误删了一些他电脑里非常重要的文件,现在真的感觉很对不起,有什么方法可以找回这些误删的文件吗?非常着急,希望大家给我一些建议!” 如今,电脑已…

Go:关于‘fresh‘ 不是内部或外部命令,也不是可运行的程序问题的解决方案

如果你使用了go get命令来安装fresh包,那么fresh命令可能没有被正确添加到系统的PATH环境变量中,需要修改你的fresh.exe的文件存放位置。 一般而言,你会将GO的安装文件夹Go与工作区文件夹GoProjects分开(你的文件夹名称与我的不同…