• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

娱乐版TPC测试

mysql 搞代码 4年前 (2022-01-09) 9次浏览 已收录 0个评论

测试TPC本来是个严肃的事情,这里只是为了娱乐一下。不要和TPC委员会的高端报告混为一谈就好了。 1. 先去找个不那么标准的TPC-C测试工具 似乎Percona MySQL的这个东西用得人还比较多:http://bazaar.launchpad.net/~percona-dev/perconatools/tpcc-mysql/ 简

测试TPC本来是个严肃的事情,这里只是为了娱乐一下。不要和TPC委员会的高端报告混为一谈就好了。

1. 先去找个不那么标准的TPC-C测试工具

似乎Percona MySQL的这个东西用得人还比较多:http://bazaar.launchpad.net/~percona-dev/perconatools/tpcc-mysql/ 简单的看了一下实现,这个和标准的差距还是较大的,例如事务之间没有停顿,也就是没有所谓的thinking time,测出来的tpmC的值会虚高。

不管是TPC,还是SPECfs,测试的基本步骤是通用的。大概都会有: a) 准备环境 b) 加载数据 c) 开跑 d) 产生报告

当然了,跑一次不容易,为了分析遇到的问题,开跑的过程中应该记录一些数据,例如CPU、内存、网络、IO等统计数据。

2. 熟悉一下工具

源代码目录下的README什么的是一定要看的,并且要仔细看。闲的蛋疼的话,还可以看看那些代码。

既然是测试TPC-C,必定有些建表的语句,这个需要仔细看看。例如:

create_table.sql add_fkey_idx.sql

表上至少应该有标准规定的那些个主码,外码等约束。不带约束的测试就是耍流氓。

3. 在正式开测之前,需要模拟练手一下,把该犯的错误都犯一遍。

编译测试程序 $ cd src; make;

创建数据库本文来源gaodai#ma#com搞@@代~&码*网2个,假设库名叫做tpcc好了 $ mysqladmin –no-defaults -S /home/mysql/run/mysql.sock -u root create tpcc

建表 $ mysql –no-defaults -S /home/mysql/run/mysql.sock -u root tpcc < create_table.sql

加载数据,假设加载10个仓库好了 $ ./tpcc_load 127.0.0.1:3306 tpcc root “” 10

机器要是差点,一个小时都搞不定。抽根烟肯定是不够的,出去吃个饭吧。既然这么慢,一定有比这快点的办法。例如:采用并行加载模式: $ ./load.sh tpcc 10

追加外码约束 $ mysql –no-defaults -S /home/mysql/run/mysql.sock -u root tpcc < add_fkey_idx.sql

前面说过,不加约束的测试是…… 在数据加载完毕后再执行有助于减少数据加载时间。再去抽颗烟吧。

跑测试 $ ./tpcc_start -h 127.0.0.1 -P 3306 -d tpcc -u root -w 10 -c 5 -r 5 -l 300 5个连接,预热5秒,跑300秒,也就是5分钟。一看就是娱乐版,这个跑不出什么好指标,例如: a) 数据量太少 b) 连接数太少 c) 才跑了几百秒 ……

清理环境(删除数据库) $ mysqladmin –no-defaults -S /home/mysql/run/mysql.sock -u root drop tpcc

跑完后会打印出个报告,最后一行类似于:

10.200 TpmC

好可怜啊!


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:娱乐版TPC测试

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址