原文中文,约2700字,阅读约需7分钟。
📝
内容提要
本文讲述了一个关于Tomcat和Database之间性能问题的案例,发现压力增加时Tomcat的QPS下降,Database的RT增加。问题出在Database端,由于MySQL等锁导致的RT抖动越来越多。绕过Tomcat直接压测Database时,QPS能上去,但通过Tomcat压测时却上不去。业务逻辑中每次请求发出多条SQL,其中一条SQL的RT较高会影响整个业务逻辑的RT。增加Tomcat节点不能解决问题。文章提到了事务不提交的代价和解决方法。
🎯
关键要点
-
随着并发增加,Tomcat的QPS下降,Database的RT增加,问题出在Database端。
-
MySQL等锁导致的RT抖动影响了业务逻辑的RT,增加Tomcat节点无法解决问题。
-
绕过Tomcat直接压测Database时,QPS能上升,但通过Tomcat压测时却无法提升。
-
每次请求发出多条SQL,其中一条SQL的RT较高会影响整个业务逻辑的RT。
-
在压力增加时,MySQL的锁导致RT抖动,影响Tomcat的性能表现。
-
业务逻辑中一次请求涉及多条SQL,抖动会显著影响整体RT。
-
事务不提交会导致DB的RT增加,影响整体性能,需关注事务的提交速度。
🏷️