【CopyContentDetector】mysqlで処理が多くなりすぎて性能不足で遅くなった

mysql

CopyContentDetectorが障害気味になってしまったので、メモ。これです。

 

■なんかmysqlが遅い

どうも処理速度が遅かったのです。なんかPHPの処理タイムアウトも出てるし。

確認してみるとどうもmysqlが遅くなっている様子。書き込み・更新がとても多いシステムなので、ディスク障害なのかと思って、ドキドキしました。

症状をまとめると以下のような感じでした。

 

  • mysqlは5.7系
  • メモリが別に不足してSWAPがでているわけではない
  • too_many_connectionまでは程遠い
  • ロックが発生して、タイムアウトしているようなことは無い。
  • CPUの利用率だけ妙に高い。でもiowaitは高くない(高くても2%くらいのログ)
  • topとかで見ると、usが90%~100%張り付き。syもちょっと高め。
  • LoadAverageが50超える。
  • データのセグメンテーションの発生や偏りがあるのかと思って、消しても問題ないテーブルはtruncate。
  • 急にslowlogが増えまくる。処理がばらつくと起こらない。insert/update文ばかり。

 

という感じでした。特に、mysql側でエラーが発生しているわけでもなく、CPUだけが特に高い。負荷が減ると通常通り。データが偏ったりしてindexの劣化がー。とか言うとそういう感じではない。

書き込みと更新ばかりスローログが出ているのに、iowaitはあまり高くない。

 

という状態でした。もうこれは、処理の量に対してデータベースのサーバスペックが足りてないと判断をして対応しました。

 

■いきなり来た

というわけで、安定した模様。今回はなんか前触れなく、突然来ました。

 

 

今後共CopyContentDetectorをよろしくお願いいたします。