假设应用在做压力测试发现应用响应缓慢,这时怀疑informix数据库存在性能瓶颈(响应缓慢),应当怎么排查呢?

假设应用在做压力测试发现应用响应缓慢,这时怀疑informix数据库存在性能瓶颈(响应缓慢),应当怎么排查呢?
例如哪些表发生了死锁(怎么查?)、统计信息过期(哪些过期?)、某些sql执行效率有问题(怎么查对应的sql)??等等等。
能否提供存在可能的原因,并提供查原因的步骤呢?
感谢!!!

参与7

1同行回答

guoxilinguoxilin高级非功能测试专家某科技公司
压力测试问题排查总体问题分析思路:由外到内,由表及里一步步排除,先全局(cpu、内存、磁盘IO、网络),再定向(目标服务进程、数据库、中间件等),如瓶颈在数据库(比如连接池耗尽、存在慢查询、数据分布不均衡等),则先从执行计划了解数据处理流程;在用profile分析步骤耗时分布,耗时是在数据...显示全部

压力测试问题排查总体问题分析思路:
由外到内,由表及里一步步排除,先全局(cpu、内存、磁盘IO、网络),再定向(目标服务进程、数据库、中间件等),如瓶颈在数据库(比如连接池耗尽、存在慢查询、数据分布不均衡等),则先从执行计划了解数据处理流程;在用profile分析步骤耗时分布,耗时是在数据访问阶段还是数据运算阶段;
在优化任何一个SQL 语句之前,都应该在自己头脑中已经先有一个预定的执行计划,然后通过不断的调整尝试,再借助Explain 来验证调整的结果是否满足自己预定的执行计划。对于不符合预期的执行计划需要不断分析Query 的写法和数据库对象的信息,继续调整尝试,直至得到预期的结果。

收起
互联网服务 · 2018-10-15
浏览2684

提问者

chenjx583
软件开发工程师星火

相关问题

相关资料

相关文章

问题状态

  • 发布时间:2018-10-14
  • 关注会员:2 人
  • 问题浏览:2912
  • 最近回答:2018-10-15
  • X社区推广