java - NamedParameterJdbcTemplate 性能测试
大家讲道理
大家讲道理 2017-04-18 10:51:59
0
1
738

MyBatis

Benchmark                               (maxPoolSize)  (minPoolSize)  Mode  Cnt    Score    Error  Units
MybatisBenchmark.batchInsert                      100            100  avgt   20  127.238 ± 27.799  ms/op
MybatisBenchmark.insert                           100            100  avgt   20    0.821 ±  0.210  ms/op
MybatisBenchmark.queryById                        100            100  avgt   20    0.633 ±  0.089  ms/op
MybatisBenchmark.queryByIdForManualMap            100            100  avgt   20    0.717 ±  0.182  ms/op

NamedJdbcTemplate

Benchmark                                 (maxPoolSize)  (minPoolSize)  Mode  Cnt    Score     Error  Units
NamedJdbcBenchmark.batchInsert                      100            100  avgt   20  533.033 ± 101.290  ms/op
NamedJdbcBenchmark.insert                           100            100  avgt   20    0.599 ±   0.167  ms/op
NamedJdbcBenchmark.queryById                        100            100  avgt   20    0.300 ±   0.044  ms/op
NamedJdbcBenchmark.queryByIdForManualMap            100            100  avgt   20    0.359 ±   0.090  ms/op

在做一个关于NamedParameterJdbcTemplate的性能测试,测试到batchInsert批量插入时发现效率比mybatis慢了几倍,我有点震惊。暂时还没有啥思路,期望童鞋们提供点思路或方法。
测试代码地址:https://github.com/kevin70/na...

连接数共100个,使用的数据库是mysql,程序和数据库都是在同一台设备上运行的。

机器配置如下:
MacBook Pro (Retina, 13-inch, Mid 2014)
CPU: 3 GHz Intel Core i7
Memory: 16 GB 1600 MHz DDR3

大家讲道理
大家讲道理

光阴似箭催人老,日月如移越少年。

reply all(1)
洪涛

The problem has been solved and needs to be turned onrewriteBatchedStatements. MySQL Optional URL parameters

Benchmark                                 (maxPoolSize)  (minPoolSize)  Mode  Cnt   Score    Error  Units
NamedJdbcBenchmark.batchInsert                      100            100  avgt   20  61.684 ± 14.840  ms/op
NamedJdbcBenchmark.batchInsert2                     100            100  avgt   20  59.116 ± 14.276  ms/op
NamedJdbcBenchmark.insert                           100            100  avgt   20   1.001 ±  0.522  ms/op
NamedJdbcBenchmark.queryById                        100            100  avgt   20   0.415 ±  0.060  ms/op
NamedJdbcBenchmark.queryByIdForManualMap            100            100  avgt   20   0.412 ±  0.064  ms/op
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template