サーバーに問題があります。これは CentOS RedHat Linux サーバーであり、Ruby/Sinatra ベースのダッシュボード「Dashing」を実行します。
MySQL データベース「SHOW PROCESSLIST;」で定義されているアクティブな接続を閉じようとしています。
Example.rb ファイル
require 'mysql2'
SCHEDULER.every '10s'do
db = Mysql.new('host_name', 'database_name', 'password', 'table')
mysql1 = "SELECT `VAR` from `TABLE` ORDER BY `VAR` DESC LIMIT 1"
result1 = db.query(mysql1)
result1.each do |row|
strrow1 = row[0]
$num1 = strrow1.to_i
end
...
db.close
LINK[0] = { label: 'LABEL', value: $num1}
...
send_event('LABEL FOR HTML', { items: LINK.values })
end
ただし、何度かクリックを行ったり来たりすると、データベースが接続を切断せずに維持することが明らかです。これにより、ブラウザーの速度が低下し、ページの読み込みが不可能になり、ログの出力が次のようになります。
"max_user_connections" reached
誰でもこれを修正する方法を考えることができますか?