加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

java – Mysql jconnector在com.myql.jdbc.utils.ReadAheadInput

发布时间:2020-12-14 16:33:05 所属栏目:Java 来源:网络整理
导读:我在剖析我的应用程序,它使用 Spring Hibernate mysql-java-connector. visualvm显示,当有1000个并行连接读取时,超过50%的CPU时间是com.myql.jdbc.utils.ReadAheadInputStream.fill()中的成本. 是否有任何优化使其更快? 解决方法 没有其他信息,很难回答您
我在剖析我的应用程序,它使用 Spring Hibernate mysql-java-connector. visualvm显示,当有1000个并行连接读取时,超过50%的CPU时间是com.myql.jdbc.utils.ReadAheadInputStream.fill()中的成本.

是否有任何优化使其更快?

解决方法

没有其他信息,很难回答您的问题.这里有一些应该满足的信息需求.

>是您估计的CPU时间绝对还是相对的?如果fill()方法使用一半的CPU时间可用于系统似乎很奇怪.但是如果这个数字是使用VisualVM来报告使用时间相对于应用程序花费的时间,那么您的应用程序的其余部分可能没有做重大的工作呢?
>使用系统级工具确定这些分析测量?你可以使用pidstat,mpstat和sar来交叉检查你是否在Linux上.我已经看到VisualVM标记的时间花在SocketInputStream.socketRead0()方法作为CPU时间,这没有被pidstat确认.我想这是VisualVM本身或JVM行为中的一些测量近似的后果.所以通过使用操作系统工具进行交叉检查始终是个好主意.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读