0

我的应用程序日志出现以下错误

ActiveRecord::ConnectionTimeoutError: could not obtain a database connection within 5.000 seconds (waited 5.000 seconds)

我的应用程序需要创建太多后台工作人员。我正在使用sucker-punch gem后台作业。我已经实现了 Rollbar 工具来监控应用程序崩溃并且它正在报告

10 occurrences in 5 minutes: #8 ActiveRecord::ConnectionTimeoutError: could not obtain a database connection within 5.000 seconds (waited 5.000 seconds)

我不确定为什么会发生这种情况,但我能感觉到我的一些后台工作不时地中断。在很多地方,我正在使用 ActiveRecord::Base.connection.execute命令进行数据库连接。

我的数据库池大小设置为100,MYSQL 统计数据为:

Aborted_connects    **51088**
Connection_errors_accept    **0**
Connection_errors_internal  **0**
Connection_errors_max_connections   **0**
Connection_errors_peer_address  **8**
Connection_errors_select    **0**
Connection_errors_tcpwrap   **0**
Connections **1232264**
Max_used_connections    **115**
Performance_schema_session_connect_attrs_lost   **0**
Ssl_client_connects **0**
Ssl_connect_renegotiates    **0**
Ssl_finished_connects   **0**
Threads_connected   **12**

应用程序有什么问题吗?也只是帮助调试问题的信息它的 AWS EC2 CPU 使用率始终保持在 80% 以上的非常高的水平。我正在使用m3.medium实例。

4

0 回答 0