实践教程之使用PolarDB-X进行TP负载测试

本文涉及的产品
云原生数据库 PolarDB MySQL 版,Serverless 5000PCU 100GB
云原生数据库 PolarDB 分布式版,标准版 2核8GB
简介: PolarDB-X 为了方便用户体验,提供了免费的实验环境,您可以在实验环境里体验 PolarDB-X 的安装部署和各种内核特性。除了免费的实验,PolarDB-X 也提供免费的视频课程,手把手教你玩转 PolarDB-X 分布式数据库。本期实验将指导您如何使用PolarDB-X进行TP负载测试。

PolarDB-X 为了方便用户体验,提供了免费的实验环境,您可以在实验环境里体验 PolarDB-X 的安装部署和各种内核特性。除了免费的实验,PolarDB-X 也提供免费的视频课程,手把手教你玩转 PolarDB-X 分布式数据库。本期实验将指导您如何使用PolarDB-X进行TP负载测试。


本期免费实验地址

本期教学视频地址


前置准备

假设已经根据前一讲内容完成了PolarDB-X的搭建部署,使用PolarDB-X Operator安装PolarDB-X,并且可以成功链接上PolarDB-X数据库。


安装Benchmark-Boot平台

1.在新打开的终端窗口中,使用root账户,在/root 目录下,执行Benchmark-Boot压测平台一键安装命令。

bash -c "$(curl -fsSL https://benchmark-boot.oss-cn-hangzhou.aliyuncs.com/setup.sh)"


01.png

说明:

  • 其他部署安装方式可参考官方文档:https://doc.polardbx.com/tools/topics/benchmark-boot.html
  • 在正式测试环境下,压测机应与数据库实例独立部署,避免资源争抢;且压测机应与数据库实例在同一个内网中,避免网络成为性能瓶颈。


2.执行如下命令,验证安装是否成功。

curl -X GET "http://127.0.0.1:4121/config/database" -H "accept: */*"

返回结果如下,表示安装成功。

02.png3.在云产品资源列表中,找到ECS服务器的公网地址或弹性IP。

03.jpg

4.在您的本地使用的浏览器中,打开网址{ECS公网IP}:4121,访问Benchmark Boot平台首页

  • 请关闭系统代理或浏览器代理进行访问。
  • 如果本地浏览器出现前端页面显示不兼容的情况,可以使用运气实验室远程桌面的Chromium网页浏览器,如下图所示。
  • 05.jpg

压测平台配置数据库连接

本章节操作均在Benchmark-Boot平台端通过白屏化操作完成。

1.配置数据库连接:

在左侧导航栏进入选择运行压测>数据库连接面板,在配置数据库连接表格中填入以下信息。

  • 目标数据库的ip地址:在第4节连接PolarDB-X集群中描述了获取方法。
  • 端口:在第4节连接PolarDB-X集群中描述了获取方法。
  • 用户名:默认为polardbx_root。
  • 密码:在第4节连接PolarDB-X集群中描述了获取方法。
  • Sysbench库名:库名可自行输入任意合法名字。由于未手动创建Sysbench数据库,此处需要手动选择建库模式——AUTO或DRDS;如果之前已在该PolarDB-X实例中创建了Sysbench数据库,建库模式选择自动判断即可。
  • TPC-C库名:注意事项同上。

06.jpg

2.提交配置后,平台将自动校验数据库是否可以连通,并自动创建对应压测数据库,页面会自动刷新并展示当前连接数据库信息:

07.jpg

压测平台运行Sysbench

本章节操作均在Benchmark-Boot平台端通过白屏化操作完成。

1.导入Sysbench。

1.1 在左侧导航栏选择运行压测>Sysbench面板,在导入Sysbench表格中填入以下信息。

  • 表数量:4。
  • 单表大小:100000。
  • 导入并发数:2。

说明:请参考当前PolarDB-X实例的规格,选择合适的表数量和并发数;4张100000大小的表在并发数为2下的导入时间约为1分钟

08.jpg

1.2 提交导入任务后,在实时数据-Sysbench面板,查看导入数据过程。

09.jpeg

1.3 导入完毕后,回到运行压测>Sysbench面板中,单击校验数据(该步骤可选)。

10.jpeg

2.运行Sysbench。

2.1 进入运行压测>Sysbench面板,在运行Sysbench表格中填入以下信息。

  • 表数量:输入表数量,例如4。
  • 单表大小:输入单表大小,例如10000。
  • 并发数:可根据负载类型选择合适并发数。
  • 运行时长:单位为秒。
  • 负载类型:此处示例为点查。
  • 任务描述:有意义的一段压测描述记录,方便后续结果查看与汇总。

说明:由于数据库实例是冷启动状态,可以进行一轮热身后,再开始性能测试结果的记录。

11.jpeg

2.2 在压测Sysbench过程中,暂不支持并行启动任务。

20230703120212.jpg

3.查看Sysbench压测结果。

3.1 在左侧导航栏选择压测结果>Sysbench面板,可以列表的形式查看历史任务。

20230703120251.jpg

3.2 可查看单个任务的QPS曲线详细结果,也可对比查看两次任务的执行结果。

20230703120331.jpg

20230703120412.jpg


压测平台运行TPC-C

本章节操作均在Benchmark-Boot平台端通过白屏化操作完成。

1.导入TPC-C。

1.1 在左侧导航栏选择“运行压测-TPC-C面板,在导入TPC-C表格中填入以下信息。

  • 仓数:10
  • 导入并发数:5

说明:由于压测机与PolarDB-X 实例在同一台机器上,资源有限,并发数建议为5,10仓导入耗时约9分钟

20230703120522.jpg

1.2 提交导入任务后,在实时数据-TPC-C网页,查看导入数据过程。

20230703120607.jpg

1.3 导入完毕后,回到运行压测-TPC-C面板中,单击校验数据导入数据(该步骤可选)。

20230703120645.jpg

2.运行TPC-C。

在左侧导航栏中选择运行压测-TPC-C面板,在运行TPC-C表格中填入以下信息。

  • 仓数:输入仓数,例如10。
  • 并发数:根据仓数选择合适并发数。
  • 运行时长:单位为分钟。
  • 任务描述:有意义的一段压测描述记录,方便后续结果查看与汇总。

20230703120721.jpg

3.查看TPC-C压测结果。

在左侧导航栏中选择压测结果-TPC-C面板,可以列表的形式查看历史任务.

可查看单个任务的tpmC曲线详细结果,也可对比查看两次任务的执行结果。

20230703120753.jpg


本文来源:PolarDB-X知乎号,阅读更多好文

相关实践学习
跟我学:如何一键安装部署 PolarDB-X
《PolarDB-X 动手实践》系列第一期,体验如何一键安装部署 PolarDB-X。
相关文章
|
15天前
|
Java 测试技术 Python
《手把手教你》系列技巧篇(二十九)-java+ selenium自动化测试- Actions的相关操作上篇(详解教程)
【4月更文挑战第21天】本文介绍了Selenium中处理特殊测试场景的方法,如鼠标悬停。Selenium的Actions类提供了鼠标悬停功能,用于模拟用户在网页元素上的悬停行为。文中通过实例展示了如何使用Actions悬停并展开下拉菜单,以及在搜索时选择自动补全的字段。代码示例包括了打开百度首页,悬停在“更多”元素上显示下拉菜单并点击“音乐”,以及在搜索框输入关键词并自动补全的过程。
38 0
|
7天前
|
Java 测试技术 Python
《手把手教你》系列技巧篇(三十六)-java+ selenium自动化测试-单选和多选按钮操作-番外篇(详解教程)
【4月更文挑战第28天】本文简要介绍了自动化测试的实战应用,通过一个在线问卷调查(<https://www.sojump.com/m/2792226.aspx/>)为例,展示了如何遍历并点击问卷中的选项。测试思路包括找到单选和多选按钮的共性以定位元素,然后使用for循环进行点击操作。代码设计方面,提供了Java+Selenium的示例代码,通过WebDriver实现自动答题。运行代码后,可以看到控制台输出和浏览器的相应动作。文章最后做了简单的小结,强调了本次实践是对之前单选多选操作的巩固。
22 0
|
1天前
|
SQL 安全 数据处理
Web 测试神器:HackBar 保姆级教程
Web 测试神器:HackBar 保姆级教程
|
1天前
|
Java 测试技术 Python
《手把手教你》系列技巧篇(三十七)-java+ selenium自动化测试-日历时间控件-上篇(详解教程)
【5月更文挑战第1天】该文介绍了使用Selenium自动化测试网页日历控件的方法。首先,文章提到在某些Web应用中,日历控件常用于选择日期并筛选数据。接着,它提供了两个实现思路:一是将日历视为文本输入框,直接输入日期;二是模拟用户交互,逐步选择日期。文中给出了JQueryUI网站的一个示例,并展示了对应的Java代码实现,包括点击日历、选择日期等操作。
11 0
|
9天前
|
存储 前端开发 测试技术
《手把手教你》系列技巧篇(三十五)-java+ selenium自动化测试-单选和多选按钮操作-下篇(详解教程)
【4月更文挑战第27天】本文介绍了使用Java+Selenium进行Web自动化测试时,如何遍历和操作多选按钮的方法。文章分为两个部分,首先是一个本地HTML页面的示例,展示了多选按钮的HTML代码和页面效果,并详细解释了遍历多选按钮的思路:找到所有多选按钮的共同点,通过定位这些元素并放入list容器中,然后使用for循环遍历并操作。 第二部分介绍了在JQueryUI网站上的实战,给出了被测网址,展示了代码设计,同样使用了findElements()方法获取所有多选按钮并存储到list中,然后遍历并进行点击操作。最后,文章对整个过程进行了小结,并推荐了作者的其他自动化测试教程资源。
18 0
|
10天前
|
前端开发 测试技术 Python
《手把手教你》系列技巧篇(三十三)-java+ selenium自动化测试-单选和多选按钮操作-上篇(详解教程)
【4月更文挑战第25天】本文介绍了自动化测试中如何处理单选和多选按钮的操作,包括它们的定义、HTML代码示例以及如何判断和操作这些元素。文章通过一个简单的HTML页面展示了单选和多选框的示例,并提供了Java+Selenium实现的代码示例,演示了如何检查单选框是否选中以及如何进行全选操作。
17 0
|
12天前
|
前端开发 Java 测试技术
《手把手教你》系列技巧篇(三十二)-java+ selenium自动化测试-select 下拉框(详解教程)
【4月更文挑战第24天】本文介绍了在自动化测试中处理HTML下拉选择(select)的方法。使用Selenium的Select类,可以通过index、value或visible text三种方式选择选项,并提供了相应的取消选择的方法。此外,文章还提供了一个示例HTML页面(select.html)和相关代码实战,演示了如何使用Selenium进行选择和取消选择操作。最后,文章提到了现代网页中类似下拉框的新设计,如12306网站的出发地选择,并给出了相应的代码示例,展示了如何定位并选择特定选项。
20 0
|
13天前
|
数据采集 前端开发 测试技术
《手把手教你》系列技巧篇(三十一)-java+ selenium自动化测试- Actions的相关操作-番外篇(详解教程)
【4月更文挑战第23天】本文介绍了网页中的滑动验证码的实现原理和自动化测试方法。作者首先提到了网站的反爬虫机制,并表示在本地创建一个没有该机制的网页,然后使用谷歌浏览器进行验证。接着,文章详细讲解了如何使用WebElement的click()方法以及Action类提供的API来模拟鼠标的各种操作,如右击、双击、悬停和拖动。
11 2
|
14天前
|
Web App开发 数据采集 Java
《手把手教你》系列技巧篇(三十)-java+ selenium自动化测试- Actions的相关操作下篇(详解教程)
【4月更文挑战第22天】本文介绍了在测试过程中可能会用到的两个功能:Actions类中的拖拽操作和划取字段操作。拖拽操作包括基本讲解、项目实战、代码设计和参考代码,涉及到鼠标按住元素并将其拖动到另一个元素上或指定位置。划取字段操作则介绍了如何在一段文字中随机选取一部分,包括项目实战、代码设计和参考代码。此外,文章还提到了滑动验证的实现,并提供了相关的代码示例。
39 2
|
16天前
|
Web App开发 JavaScript Java
《手把手教你》系列技巧篇(二十八)-java+ selenium自动化测试-处理模态对话框弹窗(详解教程)
【4月更文挑战第20天】本文主要介绍了如何使用Selenium处理网页中的alert弹窗,包括accept()、dismiss()、getText()和sendKeys()等方法。文章首先简述了在前一篇文章中提及的switchTo()方法,然后详细讲解了alert弹窗的几个关键方法。接着,作者给出了一个名为ModalDialogueBox.html的测试页面,展示了警告框、确认框和提示框三种类型的模态对话框,并提供了相应的JavaScript代码。最后,文章提供了一个实际的项目实战案例,展示了如何在Java中使用Selenium处理alert弹窗,并给出了相关代码示例。
13 0

热门文章

最新文章

相关产品

  • 云原生分布式数据库 PolarDB-X
  • 云原生数据库 PolarDB