PreparedStatement Cache的分析
PreparedStatement Cache使用分析_wliang578的博客-CSDN博客
性能压测基于oracle数据库的11.2的版本
优化后:增加了pscache。
压测场景:
1 两条简单的查询语句
orm框架:hibernate
数据库连接池:druid
缓存最大的pscache数量:20
从上述的对比来看,增加了pscache耗时还有增加,出乎意料。
从各大线程池(dbcp,druid)提供方,都说增加pscache对性能提升巨大,所以才去尝试。为什么结果会如此的不一样的
猜想
1 对低版本的数据库,可能是有用的(没做测试)。oracle服务端本身是有缓存,对于高频率的语句,也不会很快淘汰。特别是对于oracle这样的付费数据,注重性能,对这块本身会不断优化。
此片文章,写于2012年,都过去10年了,技术日新月异,是否还有用?
2 本人压测的场景有问题
综合自己分析,自认为是没问题的,单一的应用,单一的语句。
关于增加pscache耗时增加分析
这块耗时增加也是少量的,压测的量是很大的tps上百,需要的数据库连接会增加,缓存ps对象是要内存的,这块主要是新生代内存回收的时间
总结:通过压测分析,认为目前pscache对于oracle的一些版本,根本没减少耗时。所以建议不开启pscahe
如果有不同的答案,认为测试不合理,结果存疑,欢迎进行指正。