ハマった。。
MySQL + PHP でクエリ結果が、全然返ってこず「MySQLクソ重いんじゃー」とか思ってたら、設計が不味かったみたい。
1日数十件程度の処理なら、気にもならなかった処理だったのが、
毎日数十万件の追加( INSERT )、それから毎時5分ごとにアップデート( UPDATE )なんてやってると普通のクエリ( SELECT )すらままならないことに。
案の定、phpMyAdmin のプロセスには、 Locked の行が大量に溜まってしまっているという。
とりあえず、INSERT / UPDATE してる cron を切って、SELECT がきちんと動作してることを確認して、問題の INSERT / UPDATE の処理を最適化…
この辺の詳細は、また今度まとめてみよう。