Replies: 2 comments
-
Hello @jkrmelj, Thank you for giving the AWS JDBC Driver for MySQL a try! The latest release of the driver (1.0.0) has introduced a new Plugin Manager feature. The main benefit of the Plugin Manager is the ability to load, or not to load, standard and user custom plugins, thus extending driver functionality. By default, the driver loads the Failover plugin and Enhanced Failure Monitoring plugin. For reference, please refer to this section in our README: https://github.com/awslabs/aws-mysql-jdbc#:~:text=Failover%20and%20Enhanced%20Failure%20Monitoring%20are%20loaded%20by%20default. The Failure Monitoring plugin helps to detect network outages and unexpected DB cluster failover events more efficiently. However, it comes with a small price. Enhanced Failure Monitoring plugin runs a monitoring thread and proactively checks node health status. Despite the fact that monitoring thread is very light, it adds some load to the CPU. I assume that is the reason you see CPU usage increase after migration to the driver. You may consider to not load Enhanced Failure Monitoring plugin and verify that it's the reason of the increased CPU utilization. Check out details about If the above does not provide further explanation, another reason why the difference might be seen is that the AWS JDBC Driver for MySQL is based off the community MySQL JDBC driver, so there may be inherent differences within the codebase that might differ with CPU utilization when compared to MariaDB. |
Beta Was this translation helpful? Give feedback.
-
Hi, thank you for your feedback. According to the suggestions you provided I tried to disable the plugins:
If I disable AWS mysql driver and switch back using mariaDb one, the CPU usage fells down significantly. So it seems root cause lies in the underlying DB driver. The application itself is write intensive, producing around 6k updates per second. We are currently writing into four Aurora clusters in parallel. Therefore application is using four (Hikari) connection pools at a time, one for each cluster. Could this be the reason? Handling same driver within multiple connection pools? Performance Insights for the Aurora clusters do not show anything unusual. CPU usage on DB side is stable and does not differ between usage of AWS and mariaDb driver. Also no additional queries are seen on the DB side. |
Beta Was this translation helpful? Give feedback.
-
Hi,
we are using AWS Mysql compatible Aurora and recently we switched from using mariaDb driver to AWS mysql compatible driver. The transition was smooth in the sense of functionality.
But after the deploy of the application with the new AWS driver enabled we noticed an increase of CPU usage within the application. I'm attaching the graph of the CPU usage, after the deploy of new version.
While searching through the documentation of the AWS driver, I couldn't find any explanation for this increase. Can anyone explain where this increase is coming from and are there any possible mitigations to decrease the CPU load?
Thank you!
Beta Was this translation helpful? Give feedback.
All reactions