电脑桌面
添加蚂蚁七词文库到电脑桌面
安装后可以在桌面快捷访问

苍穹性能测试-- PostgreSQL性能指标

来源:金蝶云社区作者:金蝶2024-09-239

苍穹性能测试-- PostgreSQL性能指标

在做苍穹性能测试或者分析数据库问题的时候可以采用以下一些内容作为衡量数据库性能的指标。

指标分类指标项获取值方法
主机数据库机器cpu使用率<80%top,sar 命令
数据库机器负载<cpu核数*0.7top,uptime 命令
数据库机器磁盘IO使用率<80%iostat命令
数据库机器内存使用率<90%top,free命令,/proc/meminfo
数据库机器磁盘空间使用率<90%df
数据库机器网卡流量<100%iftop,sar
网络延迟<0.5msping,hping3
数据库表大小核心单表<10Gselect
    table_catalog,
    tablename,
    pg_size_pretty(tablesize) as table_size
   from
    (
    select
    table_catalog,
    ( table_schema||'.'|| table_name ) as tablename,
    pg_table_size( table_schema||'.'|| table_name ) as tablesize
    from
    information_schema.tables
    where
    pg_table_size( table_schema||'.'|| table_name ) > 10737418240
    order by
    pg_table_size(table_schema||'.'|| table_name ) desc ) as all_tables ;
最大连接数<=5000select  count(1) from pg_stat_activity;
活跃连接数<=1000select  count(1) from pg_stat_activity where state ='active';
实时慢SQL不能有大量>60s查看后台慢日志记录
错误日志不能出现有error的日志查看数据库pg_log错误日志
wal日志产生wal日志<1min查看pg_wal目录的wal日志生成情况
阻塞事务不能出现大量阻塞SQLwith     
   t_wait as     
   (     
     select  a.mode,a.locktype,a.database,a.relation,a.page,a.tuple,a.classid,a.granted,    
      a.objid,a.objsubid,a.pid,a.virtualtransaction,a.virtualxid,a.transactionid,a.fastpath,     
      b.state,b.query,b.xact_start,b.query_start,b.usename,b.datname,b.client_addr,b.client_port,b.application_name    
       from pg_locks a,pg_stat_activity  b where a.pid=b.pid and not a.granted      
   ),    
   t_run as    
   (    
     select  a.mode,a.locktype,a.database,a.relation,a.page,a.tuple,a.classid,a.granted,    
      a.objid,a.objsubid,a.pid,a.virtualtransaction,a.virtualxid,a.transactionid,a.fastpath,    
      b.state,b.query,b.xact_start,b.query_start,b.usename,b.datname,b.client_addr,b.client_port,b.application_name    
       from pg_locks a,pg_stat_activity  b where a.pid=b.pid and a.granted      
   ),    
   t_overlap as    
   (    
     select r.* from t_wait w join t_run  r on    
     (    
       r.locktype is not distinct from  w.locktype and    
       r.database is not distinct from  w.database and    
       r.relation is not distinct from  w.relation and    
       r.page is not distinct from  w.page and    
       r.tuple is not distinct from  w.tuple and    
       r.virtualxid is not distinct from  w.virtualxid and    
       r.transactionid is not distinct  from w.transactionid and    
       r.classid is not distinct from  w.classid and    
       r.objid is not distinct from  w.objid and    
       r.objsubid is not distinct from  w.objsubid and    
       r.pid <> w.pid    
     )     
   ),     
   t_unionall as     
   (     
     select r.* from t_overlap r     
     union all     
     select w.* from t_wait w     
   )     
   select  locktype,datname,relation::regclass,page,tuple,virtualxid,transactionid::text,classid::regclass,objid,objsubid,    
   string_agg(    
   'Pid: '||case when pid is null then 'NULL' else pid::text  end||chr(10)||    
   'Lock_Granted: '||case when granted is null then 'NULL' else granted::text  end||' , Mode: '||case when mode is null then 'NULL' else mode::text end||' ,  FastPath: '||case when fastpath is null then 'NULL' else fastpath::text  end||' , VirtualTransaction: '||case when virtualtransaction is null then  'NULL' else virtualtransaction::text end||' , Session_State: '||case when  state is null then 'NULL' else state::text end||chr(10)||    
   'Username: '||case when usename is null then 'NULL' else usename::text  end||' , Database: '||case when datname is null then 'NULL' else  datname::text end||' , Client_Addr: '||case when client_addr is null then  'NULL' else client_addr::text end||' , Clien

苍穹性能测试-- PostgreSQL性能指标

在做苍穹性能测试或者分析数据库问题的时候可以采用以下一些内容作为衡量数据库性能的指标。指标分类指标项值获取值方法主机数据库机器cpu...
点击下载文档文档为doc格式

声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。如若本站内容侵犯了原著者的合法权益,可联系本站删除。

确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息
QQ群
  • 答案:my7c点击这里加入QQ群
支持邮箱
微信
  • 微信