使用mysqlslap简单测试MySQL的QPS

Intel(R) Core(TM) i5-2500K CPU @ 3.30GHz 3.30 GHz
16.0 GB (15.9 GB 可用)
Windows 10 专业版 22H2
10.4.27-MariaDB

DDL

CREATE TABLE `test` (
  `id` int(11) unsigned NOT NULL AUTO_INCREMENT,
  `data` varchar(255) DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=latin1 COLLATE=latin1_swedish_ci;

插入

$ mysqlslap --concurrency=100 --number-of-queries=10000 --iterations=10 --query="INSERT INTO `test` (`data`) VALUES ('UW1GelpUWTBJT1djcU9lNnYrZThsdWVnZ2Vpbm8rZWdnU2ptbklEbHBiM25sS2pubW9RZ1FtRnpaVFkwSU9XY3FPZTZ2K1czcGVXRnR5az0=')" --create-schema=test --user=root --password=123456

Benchmark
        Average number of seconds to run all queries: 3.593 seconds
        Minimum number of seconds to run all queries: 2.797 seconds
        Maximum number of seconds to run all queries: 4.000 seconds
        Number of clients running queries: 100
        Average number of queries per client: 100

QPS:3000

索引查询

$ mysqlslap --concurrency=100 --number-of-queries=10000 --iterations=10 --query="SELECT * FROM `test` WHERE `id` = '11111'" --create-schema=test --user=root --password=123456

Benchmark
        Average number of seconds to run all queries: 0.964 seconds
        Minimum number of seconds to run all queries: 0.437 seconds
        Maximum number of seconds to run all queries: 1.578 seconds
        Number of clients running queries: 100
        Average number of queries per client: 100

QPS:10000+

索引UPDATE

$ mysqlslap --concurrency=100 --number-of-queries=10000 --iterations=10 --query="UPDATE `test`.`test` SET `data` = 'testsets1' WHERE `id` = '11111'" --create-schema=test --user=root --password=123456
Benchmark
        Average number of seconds to run all queries: 1.579 seconds
        Minimum number of seconds to run all queries: 0.438 seconds
        Maximum number of seconds to run all queries: 3.453 seconds
        Number of clients running queries: 100
        Average number of queries per client: 100

QPS:6000+

取10条

$ mysqlslap --concurrency=100 --number-of-queries=10000 --iterations=10 --query="SELECT * FROM `test`.`test` ORDER BY `id` DESC LIMIT 0,10" --create-schema=test --user=root --password=123456

Benchmark
        Average number of seconds to run all queries: 0.959 seconds
        Minimum number of seconds to run all queries: 0.453 seconds
        Maximum number of seconds to run all queries: 1.500 seconds
        Number of clients running queries: 100
        Average number of queries per client: 100

QPS:10000+

结果

操作 10000耗时 RPS
插入 3.593 3000
索引查询 0.964 10000+
索引UPDATE 1.579 6000+
取10条 0.959 10000+
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容