簡體   English   中英

Active Record 無法在 5.000 秒內獲得數據庫連接

[英]Active Record Could not obtain a database connection within 5.000 seconds

從過去幾周開始,我看到此錯誤“無法在 5.000 秒內獲得數據庫連接”。 我嘗試了以下解決方案。

根據 Sidekiq Docs,我已將並發性降低到 10,並將 MySql 數據庫池大小增加到 12。但我仍然收到此錯誤,因此我將數據庫池大小增加到 27。但問題仍然存在。 這個這個答案中嘗試了解決方案。 我的 Sidekiq 服務器機器沒有運行任何其他可以使用 AR 連接的進程。 我沒有從外面紡任何線。 下面是我的配置

Sidekiq version - 3.4.2
Rails version - 4.2.4
Active Record version - 4.2.4
Database pool size - 27
Sidekiq concurrency - 10

對此的任何幫助將不勝感激。

我懷疑這是服務器端的連接泄漏。

Sidekiq::Middleware::Server::ActiveRecord是負責在作業完成后將連接返回到池的中間件。 默認情況下應包含此內容。

當您使用-v標志啟動服務器時,

bundle exec sidekiq -v -C config_file

它將打印將被調用的所有中間件。 你能檢查一下這個中間件是否存在於列表中嗎?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM