Appearance
性能对比
当前性能比较代码来自Mybatis-Flex,原本是Mybatis-Flex和Mybaits-Plus的「性能」对比,在他们的基础上删除了json的typehandler,增加了自己的测试代码。
直接放结论:各项指标dream-orm直接超过Mybatis-Flex,在当前测试数据量的情况下,用时大约少一倍。
tex
---------------
>>>>>>>testDreamSelectOne:301
>>>>>>>testFlexSelectOne:711
>>>>>>>testPlusSelectOneWithLambda:1370
>>>>>>>testPlusSelectOne:839
---------------
>>>>>>>testDreamSelectOne:129
>>>>>>>testFlexSelectOne:116
>>>>>>>testPlusSelectOneWithLambda:1165
>>>>>>>testPlusSelectOne:981
---------------
>>>>>>>testDreamSelectOne:69
>>>>>>>testFlexSelectOne:208
>>>>>>>testPlusSelectOneWithLambda:756
>>>>>>>testPlusSelectOne:819
---------------
>>>>>>>testDreamSelectOne:57
>>>>>>>testFlexSelectOne:148
>>>>>>>testPlusSelectOneWithLambda:984
>>>>>>>testPlusSelectOne:805
---------------
>>>>>>>testDreamSelectOne:35
>>>>>>>testFlexSelectOne:52
>>>>>>>testPlusSelectOneWithLambda:701
>>>>>>>testPlusSelectOne:568
---------------
>>>>>>>testDreamSelectOne:34
>>>>>>>testFlexSelectOne:51
>>>>>>>testPlusSelectOneWithLambda:595
>>>>>>>testPlusSelectOne:590
---------------
>>>>>>>testDreamSelectOne:29
>>>>>>>testFlexSelectOne:51
>>>>>>>testPlusSelectOneWithLambda:586
>>>>>>>testPlusSelectOne:563
---------------
>>>>>>>testDreamSelectOne:33
>>>>>>>testFlexSelectOne:55
>>>>>>>testPlusSelectOneWithLambda:727
>>>>>>>testPlusSelectOne:633
---------------
>>>>>>>testDreamSelectOne:30
>>>>>>>testFlexSelectOne:52
>>>>>>>testPlusSelectOneWithLambda:668
>>>>>>>testPlusSelectOne:589
---------------
>>>>>>>testDreamSelectOne:34
>>>>>>>testFlexSelectOne:50
>>>>>>>testPlusSelectOneWithLambda:580
>>>>>>>testPlusSelectOne:564
---------------------selectList:
---------------
>>>>>>>testDreamSelectTop10:59
>>>>>>>testFlexSelectTop10:86
>>>>>>>testPlusSelectTop10WithLambda:662
>>>>>>>testPlusSelectTop10:582
---------------
>>>>>>>testDreamSelectTop10:37
>>>>>>>testFlexSelectTop10:76
>>>>>>>testPlusSelectTop10WithLambda:603
>>>>>>>testPlusSelectTop10:583
---------------
>>>>>>>testDreamSelectTop10:37
>>>>>>>testFlexSelectTop10:73
>>>>>>>testPlusSelectTop10WithLambda:596
>>>>>>>testPlusSelectTop10:571
---------------
>>>>>>>testDreamSelectTop10:35
>>>>>>>testFlexSelectTop10:73
>>>>>>>testPlusSelectTop10WithLambda:582
>>>>>>>testPlusSelectTop10:627
---------------
>>>>>>>testDreamSelectTop10:35
>>>>>>>testFlexSelectTop10:73
>>>>>>>testPlusSelectTop10WithLambda:604
>>>>>>>testPlusSelectTop10:587
---------------
>>>>>>>testDreamSelectTop10:41
>>>>>>>testFlexSelectTop10:71
>>>>>>>testPlusSelectTop10WithLambda:670
>>>>>>>testPlusSelectTop10:569
---------------
>>>>>>>testDreamSelectTop10:35
>>>>>>>testFlexSelectTop10:79
>>>>>>>testPlusSelectTop10WithLambda:599
>>>>>>>testPlusSelectTop10:582
---------------
>>>>>>>testDreamSelectTop10:36
>>>>>>>testFlexSelectTop10:70
>>>>>>>testPlusSelectTop10WithLambda:636
>>>>>>>testPlusSelectTop10:571
---------------
>>>>>>>testDreamSelectTop10:35
>>>>>>>testFlexSelectTop10:74
>>>>>>>testPlusSelectTop10WithLambda:591
>>>>>>>testPlusSelectTop10:568
---------------
>>>>>>>testDreamSelectTop10:35
>>>>>>>testFlexSelectTop10:74
>>>>>>>testPlusSelectTop10WithLambda:589
>>>>>>>testPlusSelectTop10:579
---------------------paginate:
---------------
>>>>>>>testDreamPaginate:38
>>>>>>>testFlexPaginate:77
>>>>>>>testPlusPaginate:593
---------------
>>>>>>>testDreamPaginate:30
>>>>>>>testFlexPaginate:77
>>>>>>>testPlusPaginate:612
---------------
>>>>>>>testDreamPaginate:30
>>>>>>>testFlexPaginate:75
>>>>>>>testPlusPaginate:595
---------------
>>>>>>>testDreamPaginate:25
>>>>>>>testFlexPaginate:74
>>>>>>>testPlusPaginate:579
---------------
>>>>>>>testDreamPaginate:28
>>>>>>>testFlexPaginate:75
>>>>>>>testPlusPaginate:591
---------------
>>>>>>>testDreamPaginate:31
>>>>>>>testFlexPaginate:67
>>>>>>>testPlusPaginate:589
---------------
>>>>>>>testDreamPaginate:28
>>>>>>>testFlexPaginate:74
>>>>>>>testPlusPaginate:576
---------------
>>>>>>>testDreamPaginate:29
>>>>>>>testFlexPaginate:69
>>>>>>>testPlusPaginate:588
---------------
>>>>>>>testDreamPaginate:25
>>>>>>>testFlexPaginate:71
>>>>>>>testPlusPaginate:597
---------------
>>>>>>>testDreamPaginate:28
>>>>>>>testFlexPaginate:65
>>>>>>>testPlusPaginate:580
---------------------update:
---------------
>>>>>>>testDreamUpdate:42
>>>>>>>testFlexUpdate:58
>>>>>>>testPlusUpdate:510
---------------
>>>>>>>testDreamUpdate:39
>>>>>>>testFlexUpdate:51
>>>>>>>testPlusUpdate:498
---------------
>>>>>>>testDreamUpdate:38
>>>>>>>testFlexUpdate:51
>>>>>>>testPlusUpdate:504
---------------
>>>>>>>testDreamUpdate:37
>>>>>>>testFlexUpdate:47
>>>>>>>testPlusUpdate:514
---------------
>>>>>>>testDreamUpdate:37
>>>>>>>testFlexUpdate:46
>>>>>>>testPlusUpdate:484
---------------
>>>>>>>testDreamUpdate:37
>>>>>>>testFlexUpdate:52
>>>>>>>testPlusUpdate:490
---------------
>>>>>>>testDreamUpdate:40
>>>>>>>testFlexUpdate:47
>>>>>>>testPlusUpdate:481
---------------
>>>>>>>testDreamUpdate:35
>>>>>>>testFlexUpdate:46
>>>>>>>testPlusUpdate:507
---------------
>>>>>>>testDreamUpdate:36
>>>>>>>testFlexUpdate:44
>>>>>>>testPlusUpdate:488
---------------
>>>>>>>testDreamUpdate:36
>>>>>>>testFlexUpdate:44
>>>>>>>testPlusUpdate:472当前性能比较代码来自beetlsql,原本是beetlsql和其他国产数据库框架的「性能」对比,同样增加了自己的测试代码。
直接放结论:各项指标dream-orm基本登顶。
tex
Benchmark Mode Cnt Score Error Units
JMHMain.beetlsqlComplexMapping thrpt 3 126.916 ± 349.412 ops/ms
JMHMain.beetlsqlExecuteJdbc thrpt 3 48.781 ± 156.107 ops/ms
JMHMain.beetlsqlExecuteTemplate thrpt 3 36.777 ± 209.030 ops/ms
JMHMain.beetlsqlFile thrpt 3 63.208 ± 64.264 ops/ms
JMHMain.beetlsqlGetAll thrpt 3 4.708 ± 6.234 ops/ms
JMHMain.beetlsqlInsert thrpt 3 55.011 ± 25.422 ops/ms
JMHMain.beetlsqlLambdaQuery thrpt 3 29.645 ± 236.440 ops/ms
JMHMain.beetlsqlOne2Many thrpt 3 56.392 ± 434.440 ops/ms
JMHMain.beetlsqlPageQuery thrpt 3 43.986 ± 147.096 ops/ms
JMHMain.beetlsqlSelectById thrpt 3 63.932 ± 17.653 ops/ms
JMHMain.dreamComplexMapping thrpt 3 248.351 ± 209.782 ops/ms
JMHMain.dreamExecuteJdbc thrpt 3 209.244 ± 33.469 ops/ms
JMHMain.dreamExecuteTemplate thrpt 3 209.579 ± 5.884 ops/ms
JMHMain.dreamFile thrpt 3 196.125 ± 88.131 ops/ms
JMHMain.dreamGetAll thrpt 3 10.624 ± 1.849 ops/ms
JMHMain.dreamInsert thrpt 3 55.326 ± 88.457 ops/ms
JMHMain.dreamLambdaQuery thrpt 3 194.561 ± 23.030 ops/ms
JMHMain.dreamPageQuery thrpt 3 97.606 ± 135.461 ops/ms
JMHMain.dreamSelectById thrpt 3 210.446 ± 33.645 ops/ms
JMHMain.easyQueryComplexMapping thrpt 3 33.183 ± 240.619 ops/ms
JMHMain.easyQueryExecuteJdbc thrpt 3 168.401 ± 180.110 ops/ms
JMHMain.easyQueryGetAll thrpt 3 12.783 ± 0.829 ops/ms
JMHMain.easyQueryInsert thrpt 3 44.397 ± 43.888 ops/ms
JMHMain.easyQueryLambdaQuery thrpt 3 77.022 ± 6.765 ops/ms
JMHMain.easyQueryOne2Many thrpt 3 45.555 ± 183.953 ops/ms
JMHMain.easyQueryPageQuery thrpt 3 45.917 ± 114.439 ops/ms
JMHMain.easyQuerySelectById thrpt 3 67.607 ± 250.167 ops/ms
JMHMain.flexGetAll thrpt 3 1.401 ± 0.457 ops/ms
JMHMain.flexInsert thrpt 3 2.838 ± 39.958 ops/ms
JMHMain.flexPageQuery thrpt 3 17.563 ± 157.941 ops/ms
JMHMain.flexSelectById thrpt 3 38.475 ± 118.593 ops/ms
JMHMain.jdbcExecuteJdbc thrpt 3 410.662 ± 117.016 ops/ms
JMHMain.jdbcGetAll thrpt 3 21.951 ± 7.408 ops/ms
JMHMain.jdbcInsert thrpt 3 121.117 ± 361.820 ops/ms
JMHMain.jdbcSelectById thrpt 3 388.063 ± 770.608 ops/ms
JMHMain.jpaExecuteJdbc thrpt 3 17.584 ± 116.416 ops/ms
JMHMain.jpaExecuteTemplate thrpt 3 35.585 ± 247.749 ops/ms
JMHMain.jpaGetAll thrpt 3 2.620 ± 1.909 ops/ms
JMHMain.jpaInsert thrpt 3 8.810 ± 60.602 ops/ms
JMHMain.jpaOne2Many thrpt 3 42.571 ± 432.509 ops/ms
JMHMain.jpaPageQuery thrpt 3 24.476 ± 196.593 ops/ms
JMHMain.jpaSelectById thrpt 3 176.292 ± 182.603 ops/ms
JMHMain.mybatisComplexMapping thrpt 3 62.219 ± 125.885 ops/ms
JMHMain.mybatisExecuteTemplate thrpt 3 24.156 ± 151.936 ops/ms
JMHMain.mybatisFile thrpt 3 15.820 ± 162.548 ops/ms
JMHMain.mybatisGetAll thrpt 3 2.733 ± 3.062 ops/ms
JMHMain.mybatisInsert thrpt 3 19.955 ± 51.565 ops/ms
JMHMain.mybatisLambdaQuery thrpt 3 1.887 ± 18.703 ops/ms
JMHMain.mybatisPageQuery thrpt 3 8.535 ± 33.308 ops/ms
JMHMain.mybatisSelectById thrpt 3 27.303 ± 95.440 ops/ms
JMHMain.woodExecuteJdbc thrpt 3 83.237 ± 44.725 ops/ms
JMHMain.woodExecuteTemplate thrpt 3 77.269 ± 19.345 ops/ms
JMHMain.woodFile thrpt 3 82.569 ± 41.053 ops/ms
JMHMain.woodGetAll thrpt 3 1.235 ± 0.137 ops/ms
JMHMain.woodInsert thrpt 3 48.096 ± 41.743 ops/ms
JMHMain.woodLambdaQuery thrpt 3 82.854 ± 39.809 ops/ms
JMHMain.woodPageQuery thrpt 3 88.134 ± 495.298 ops/ms
JMHMain.woodSelectById thrpt 3 82.157 ± 14.562 ops/ms