服务器基准测试实践:SysBench的搭建与基本使用

news2025/1/12 10:50:23

在这里插入图片描述

🏆作者简介,黑夜开发者,CSDN领军人物,全栈领域优质创作者✌,CSDN博客专家,阿里云社区专家博主,2023年6月CSDN上海赛道top4。
🏆数年电商行业从业经验,AWS/阿里云资深使用用户,历任核心研发工程师,项目技术负责人。
🎉欢迎 👍点赞✍评论⭐收藏

文章目录

  • 🚀一、SysBench是什么?
  • 🚀二、SysBench的用处
    • 🔎2.1 性能评估
    • 🔎2.2 系统优化
    • 🔎2.3 硬件选型
    • 🔎2.4 软件调优
  • 🚀三、在CentOS下安装SysBench
  • 🚀四、使用SysBench进行CPU、磁盘和内存测试
    • 🔎4.1 CPU测试
    • 🔎4.2 磁盘测试
    • 🔎4.3 内存测试
  • 🚀五、测试结果中参数的说明
  • 🚀六、总结


如何更加全面了解我们服务器?如何对服务器进行基准测试?如何评估服务器的上线能力?通过本文一起来探索吧。

🚀一、SysBench是什么?

SysBench是一个跨平台的基准测试工具,用于评估计算机系统在不同负载条件下的性能。它模拟真实场景下的工作负载,提供了多种测试模式,包括CPU、内存、磁盘、线程等方面的测试。

在这里插入图片描述

SysBench主要解决的问题是通过模拟真实的工作负载,在不同的测试模式下对系统进行性能评估。它帮助用户了解系统在不同负载条件下的响应能力、资源利用率和稳定性,从而从硬件和软件两个层面上进行系统的优化和改进。

在这里插入图片描述

同时,SysBench还可以验证系统的稳定性、可靠性和扩展性,为系统的开发、测试和运维提供了可靠的数据支持。

🚀二、SysBench的用处

SysBench主要用于性能测试和基准测试,其用途包括但不限于以下几个方面:

🔎2.1 性能评估

通过对计算机系统的性能进行测试,获取各个组件的实际性能数据,帮助用户了解系统的性能状况。

在这里插入图片描述

🔎2.2 系统优化

通过对系统的性能进行测试,可以发现系统存在的瓶颈和问题,进而进行相应的优化操作,提升系统的性能表现。

🔎2.3 硬件选型

在购买新设备时,可以利用SysBench对不同硬件配置进行测试比较,选择最适合自己需求的配置。

🔎2.4 软件调优

SysBench提供了多种测试场景,可以测试不同软件在不同负载下的性能,帮助用户进行软件的调优和改进。

SysBench作为一个强大的基准测试工具,他能帮助用户深入了解计算机系统的性能,并从硬件和软件两个维度上进行优化和升级。

🚀三、在CentOS下安装SysBench

CentOS系统下安装SysBench非常简单,只需要执行以下几个步骤:

  1. 首先,确保系统已经安装了EPEL软件库。如果没有安装,请执行以下命令进行安装:
sudo yum install epel-release
  1. 安装SysBench软件包。执行以下命令进行安装:
sudo yum install sysbench
  1. 等待安装完成后,可以通过以下命令进行版本验证:
sysbench --version

安装完成后,即可开始使用SysBench进行性能测试。

在这里插入图片描述

🚀四、使用SysBench进行CPU、磁盘和内存测试

🔎4.1 CPU测试

通过SysBench进行CPU测试,可以评估系统的计算能力和多线程处理能力。执行以下命令:

sysbench --test=cpu --num-threads=4 --cpu-max-prime=20000 run

该命令将使用4个线程进行计算,计算范围是从1到20000的所有质数。

在这里插入图片描述

🔎4.2 磁盘测试

通过SysBench进行磁盘测试,可以评估系统的磁盘读写性能。执行以下命令:

sysbench fileio --file-test-mode=rndrw --time=10 --max-requests=0 --file-total-size=3G --file-num=64 prepare
sysbench fileio --file-test-mode=rndrw --time=10 --max-requests=0 --file-total-size=3G --file-num=64 run
sysbench fileio --file-test-mode=rndrw --time=10 --max-requests=0 --file-total-size=3G --file-num=64 cleanup

该命令将进行随机读写测试,并使用64个文件夹进行测试,每个文件夹大小为3GB。

🔎4.3 内存测试

通过SysBench进行内存测试,可以评估系统的内存读写性能和可用内存容量。执行以下命令:

sysbench --test=memory --num-threads=4 --memory-total-size=1G run

该命令将使用4个线程进行内存读写测试,测试总内存大小为1GB。

在这里插入图片描述

🚀五、测试结果中参数的说明

以下是一些常见的参数说明:

参数说明
events总共执行的事件数
total time总共耗时
min最小延迟(单位:毫秒)
avg平均延迟(单位:毫秒)
max最大延迟(单位:毫秒)
95th延迟的95%分位点(单位:毫秒)
sum所有延迟的总和(单位:毫秒)
qps每秒钟处理的查询数
tps每秒钟处理的事务数
latency延迟时间的分布
threads使用的线程数
reads/s每秒钟的读取次数
writes/s每秒钟的写入次数
fsyncs/s每秒钟的同步次数
reorders/s每秒钟的重新排序次数
elapsed测试耗时
transferred总字节数
bandwidth带宽大小

🚀六、总结

本篇文章重点介绍了Sysbench,以及它的使用初步探索,它是一个功能强大的基准测试工具,广泛用于评估计算机系统的性能和稳定性。通过为不同的测试场景提供测试模式,SysbBnch可以解决系统性能评估、硬件选型、软件调优等问题。另外通过Sysbench可以进行CPU磁盘内存数据库等多方面的性能测试,帮助用户全面了解系统的性能特性,根据近似真实的模拟让我们对项目上线后的情况有一个大概的感知。

在这里插入图片描述

今天的内容就到这里,我们下次见。

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

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

相关文章

Java 中的比较 equals 和 ==

这个问题在 Java 面试的时候大概率会被问到。 不是因为这个问题有什么复杂的,只是因为这个地方超出人类认知,你相信吗? 比较什么 如果你上培训班或者在学校学习的话,你的老师大概率可能会告诉你对于: 基本类型&…

【数据结构面试题】栈与队列的相互实现

目录 1.队列实现栈 1.1创建栈 1.2判断是否为空 1.3入栈 1.4出栈 1.5获取栈顶元素 1.6完整代码 2. 用栈实现队列 2.1创建队列 2.2判断是否为空 2.3入队列 2.4出队列 2.5获取队头元素 2.6完整代码 1.队列实现栈 用队列实现栈https://leetcode.cn/problems/impleme…

Java笔记:Volatile

一、简介 volatile是Java提供的一种轻量级的同步机制。Java 语言包含两种内在的同步机制:同步块(或方法)和 volatile 变量,相比于synchronized(synchronized通常称为重量级锁),volatile更轻量级…

比较Visual Studio Code中的文件

目录 一、比较两个文件 1.1VS code中的文件大致分为两类: 1.2如何比较VS code中的两个文件? 二、并排差异模式:VS code中的一种差异模式 三、内联差异模式:VS code中的另一种差异模式 四、VS code忽略在行首或者行尾添加或删除…

Shazam音乐检索算法原理及实现

算法基本流程如下: 1. 采集音乐库 2. 音乐指纹采集 3. 采用局部最大值作为特征点 4. 将临近的特征点进行组合形成特征点对 5. 对每个特征点对进行hash编码 编码过程:将f1和f2进行10bit量化,其余bit用来存储时间偏移合集形成32bit的hash码 …

使用LambdaQueryWrapper再也不担心字段拼写错误了 [MyBatis-Plus系列] - 第485篇

历史文章(文章累计480) 《国内最全的Spring Boot系列之一》 《国内最全的Spring Boot系列之二》 《国内最全的Spring Boot系列之三》 《国内最全的Spring Boot系列之四》 《国内最全的Spring Boot系列之五》 《国内最全的Spring Boot系列之六》 E…

数据结构--二叉树-堆(1)

文章目录 树概念相关的基本概念树的表示 二叉树概念特殊二叉树性质 堆二叉树的顺序结构堆的概念 堆的实现初始化数组初始化为堆向上调整向下调整插入删除打印、摧毁、判空、获取堆顶数据验证 堆的应用堆排序TopK问题 树 概念 树是一种常见的非线性的数据结构,&…

Docker 入门:如何打包、部署并运行你的应用

🌷🍁 博主猫头虎(🐅🐾)带您 Go to New World✨🍁 🐅🐾猫头虎建议程序员必备技术栈一览表📖: 🛠️ 全栈技术 Full Stack: &#x1f4da…

cmake构建和编译

什么是CMake? CMake本身是一个工具集,由五个可执行的程序组成:cmake、ctest、cpack、cmake-gui和ccmake,其中cmake可以说是出镜率最高的明星级别程序了,它用于在构建项目的第一步,进行项目的配置、生成和构…

SQL4 查询结果限制返回行数

描述 题目:现在运营只需要查看前2个用户明细设备ID数据,请你从用户信息表 user_profile 中取出相应结果。 示例: iddevice_idgenderageuniversityprovince12138male21北京大学Beijing23214male复旦大学Shanghai36543female20北京大学Beijin…

健身房预约小程序开发全攻略

随着健身行业的快速发展,健身房预约小程序成为了方便、快捷的预约方式,为健身爱好者提供了更好的服务。本文将介绍如何开发健身房预约小程序。 第一步:登录小程序制作平台 首先,进入后台,点击【轻应用小程序】中的【去…

MATLAB入门-数据的导入和导出

MATLAB入门-数据的导入和导出 注:本篇文章是课程学习笔记,课程链接为:头歌 常见的几个导入数据的方法 load函数 load函数专门用于引入MATLAB的.mat格式数据,十分的简单方便。 例如:一个-ASCII编码形式存储的数据文件…

usb学习笔记

框架 usb 驱动是基于usb core 的,设备插上之后,host 层自然会进行识别,设备驱动通过core层的接口操作设备,而不用直接面对usb硬件。对于应用层需要封装成一个usb 的设备。 驱动是基于urb 数据进行操作的。 49 static void usb_mo…

关于this

参考阮一峰老师对于this的原理理解 一:this的定义 在严格模式下和非严格模式下,this的在全局中会有差别 来自阮一峰老师对于this的由来的理解 由于函数可以在不同的运行环境中运行,所以需要一种机制,能够在函数的内部获取当前运…

大数据课程L6——网站流量项目的SparkStreaming

文章作者邮箱:yugongshiye@sina.cn 地址:广东惠州 ▲ 本章节目的 ⚪ 了解网站流量项目的SparkStreaming概述; ⚪ 掌握网站流量项目的SparkStreaming实现 Wordcount 底层流程; ⚪ 掌握网站流量项目的SparkStreaming实现历史批次的累积处理; ⚪ 掌握网站流…

Vue中使用Google的reCAPTCHA v3人机校验-demo

reCAPTCHA Google 提供了 reCAPTCHA(v3 和 v2)和 reCAPTCHA Enterprise,帮助您保护网站免受欺诈活动、垃圾内容和滥用行为的侵扰 reCAPTCHA v3 「所有的頁面都會有 reCaptcha 的追蹤功能」 不需做任何事,v3會針對使用者行為&#…

IDEA编写Java编程代码提示插件

网址: aiXcoder idea软件中使用代码提示: aixcoder

C语言实现扫雷小游戏

1.首先扫雷游戏要存储布置好的雷信息,需要一个二维数组 不是雷放* 雷:# 不是雷:0 雷:1 2. 给2个二维数组 9*9 一个存放雷的信息,一个存放布置好雷的信息 3.为了防止在统计坐标周围的…

回归与聚类算法系列④:岭回归

目录 1. 背景 2. 数学模型 3. 特点 4. 应用领域 5. 岭回归与其他正则化方法的比较 6、API 7、代码 8、总结 🍃作者介绍:双非本科大三网络工程专业在读,阿里云专家博主,专注于Java领域学习,擅长web应用开发、数…

OLED透明屏控制:引领未来交互技术的创新突破

OLED透明屏控制技术作为一项颠覆性的显示技术,正逐渐改变我们与屏幕互动的方式。 其高透明度、触摸和手势交互、高画质和图像显示效果等特点,为用户提供了更智能、便捷的交互体验,同时也在各行各业中展现出无限的应用可能性。 在此&#xf…