Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Performance tests #111

Closed
davecramer opened this issue Aug 29, 2022 · 5 comments
Closed

Performance tests #111

davecramer opened this issue Aug 29, 2022 · 5 comments

Comments

@davecramer
Copy link
Contributor

Has anyone tried https://gist.github.com/kenshih/6c5c3bc74bcf2adb2d6d880428addc6d on this driver.

This is the code from awslabs/aws-mysql-jdbc#196

@karenc-bq
Copy link
Contributor

I ran it locally on my machine and got the following results:

Driver/Wrapper Average Time
MySQL Connector/J 767.446 ± 56.579 ms/op
PGJDBC 642.939 ± 15.151 ms/op
JDBC Wrapper MySQL no plugins 762.681 ± 7.676 ms/op
JDBC Wrapper MySQL with Failover & EFM 969.744 ± 40.360 ms/op
JDBC Wrapper MySQL with Failover 945.849 ± 239.203 ms/op
JDBC Wrapper MySQL with EFM 844.474 ± 62.733 ms/op
JDBC Wrapper PostgreSQL no plugins 630.060 ± 12.826 ms/op
JDBC Wrapper PostgreSQL with Failover & EFM 873.769 ± 93.588 ms/op
JDBC Wrapper PostgreSQL with Failover 788.667 ± 72.351 ms/op
JDBC Wrapper PostgreSQL with EFM 713.155 ± 17.770 ms/op

@hsuamz @sergiyvamz

@davecramer
Copy link
Contributor Author

@karenc-bq thanks for running this. The overhead seems to be a bit more than I thought it would be. We should probably look into this.

@davecramer
Copy link
Contributor Author

So I think it makes sense to understand why we are 100 to 200 ms overhead per op

@karenc-bq
Copy link
Contributor

I re-ran the benchmarks on dev branch and main branch and here are the results.

Main Branch

Benchmark Average Time (ms/op) Delta
MySQL Driver 808.513
JDBC Wrapper for MySQL With No Plugins 816.952 1%
JDBC Wrapper for MySQL With EFM 865.766 7%
JDBC Wrapper for MySQL With Failover 956.221 18%
JDBC Wrapper for MySQL With Failover and EFM 1021.303 26%
Benchmark Average Time (ms/op) Delta
PGJDBC 667.3
JDBC Wrapper for PostgreSQL With No Plugins 828.034 24%
JDBC Wrapper for PostgreSQL With EFM 733.36 10%
JDBC Wrapper for PostgreSQL With Failover 968.904 45%
JDBC Wrapper for PostgreSQL With Failover and EFM 881.339 32%

Dev Branch

Benchmark Average Time (ms/op) Delta
MySQL Driver 802.834
JDBC Wrapper for MySQL With No Plugins 800.422 0%
JDBC Wrapper for MySQL With EFM 873.595 9%
JDBC Wrapper for MySQL With Failover 808.71 1%
JDBC Wrapper for MySQL With Failover and EFM 871.703 9%
Benchmark Average Time (ms/op) Delta
PGJDBC 659.755
JDBC Wrapper for PostgreSQL With No Plugins 659.271 0%
JDBC Wrapper for PostgreSQL With EFM 735.415 11%
JDBC Wrapper for PostgreSQL With Failover 657.524 0%
JDBC Wrapper for PostgreSQL With Failover and EFM 733.983 11%

@hsuamz
Copy link
Contributor

hsuamz commented Oct 3, 2022

Closing - documentation now includes performance metrics.

@hsuamz hsuamz closed this as completed Oct 3, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants