📢📢📢📣📣📣
作者:IT邦德
中国DBA联盟(ACDU)成员,10余年DBA工作经验,
Oracle、PostgreSQL ACE
CSDN博客专家及B站知名UP主,全网粉丝10万+
擅长主流Oracle、MySQL、PG、高斯及Greenplum备份恢复,
安装迁移,性能优化、故障应急处理
本文详细的介绍了PostgreSQL压测工具的使用及注意要点
压力测试的指标:
lQPS(Queries Per Second)就是每秒的查询数,对数据库而言就是数据库每秒执行
SQL数(含insert、select、update、delete等)。
lTPS(Transactions Per Second)就是每秒的事务数。TPS对于数据库而言就是数据库
秒执行的事务数,以commit成功次数为准。
https://github.com/akopytov/sysbench
https://wiki.gentoo.org/wiki/Sysbench
https://launchpad.net/sysbench

✨ 3.1 sysbench安装

✨ 3.2 压测PG
✨ 3.3 测试准备
– 修改max_connections参数
show max_connections ;
alter system set max_connections=10000;
后续重启数据库生效

✨ 3.4 测试案例



pgbench是一个用于在PostgreSQL数据库中运行基准测试的简单程序。pgbench在多个并发的数据库会话中反复运行一系列相同的SQL命令,并计算事务执行的平均速率(每秒执行的事务个数)。 pgbench默认测试的是一种基于TPC-B的松散的测试,即一个事务中包括5个SELECT,UPDATE和INSERT语句。同时允许基于开发者自己书写的事务脚本文件进行其他场景的测试。
✨ 4.1 初始化数据

✨ 4.2 压测过程
模拟80个用户,64个线程多并发,每10秒显示一次进度报告,运行60秒
pgbench -n -T 60 -P 10 -c 80 -j 64 -U postgres testdb
select count(*) from pg_stat_activity where datname=‘testdb’;

版权声明:
本文来源网络,所有图片文章版权属于原作者,如有侵权,联系删除。
本文网址:https://www.mushiming.com/mjsbk/1835.html