java– 使用MySQL和JDBC编写的语句缓存

java– 使用MySQL和JDBC编写的语句缓存,第1张

概述我读到MySQL不支持服务器端查询计划缓存.因此,如果我想使用PreparedStatements获得性能优势,我可以做的是在JDBC Connection中启用语句缓存.因此,根据文档,它将支持基于每个连接缓存预准备语句.与MySQL有服务器端查询计划缓存相比,JDBC连接的PreparedStatement缓存的性能提升是多少?因此,如果确实在物理连接的

我读到MySQL不支持服务器端查询计划缓存.因此,如果我想使用PreparedStatements获得性能优势,我可以做的是在JDBC Connection中启用语句缓存.因此,根据文档,它将支持基于每个连接缓存预准备语句.

与MysqL有服务器端查询计划缓存相比,JDBC连接的PreparedStatement缓存的性能提升是多少?
因此,如果确实在物理连接的缓存中找到了PreparedStatement,那么它是否意味着当它到达MysqL服务器时,MysqL不会对它运行查询优化并且能够直接执行它吗?

在使用MysqL作为我的数据库时,我是否应该在JDBC连接级别使用Statement缓存?我正在使用Hikari数据库连接池与MysqL JDBC连接器.

最佳答案是的,如果您知道自己在做什么,缓存不会受到影响.如果您按照预期重复使用预准备语句,那么将客户端缓存与服务器端缓存Wilds性能结合起来会带来好处(许多人忘记了最重要的部分:D).只需正确设置Connector/J properties属性:

cachePrepStmts=true&useServerPrepStmts=true

虽然我不是微观基准的忠实粉丝,但是here is one支持我的陈述(确实是蹩脚的双关语).关于基准测试的有趣部分是,它表明启用服务器端缓存可能实际上减慢了一些事情而没有一些客户端缓存,但启用了两层缓存以及正确重用已准备好的语句,您实际上可以获得良好的加速. 总结

以上是内存溢出为你收集整理的java – 使用MySQL和JDBC编写的语句缓存全部内容,希望文章能够帮你解决java – 使用MySQL和JDBC编写的语句缓存所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/1168180.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-01
下一篇 2022-06-01

发表评论

登录后才能评论

评论列表(0条)

保存