フォローインポートの負荷を軽減する修正がマージされました。
Fix performance of follow import
https://github.com/tootsuite/mastodon/pull/13836
自分が書いたヤツなので、ざっくり説明します。
ポイントとしては、WebFingerのタイムアウト時間を短くし、フォローがうまく行かなかったサーバはすぐにあきらめてそのまま5分間維持、配送不能になっているサーバにはトライしないなど、見込みの無いサーバにいつまでもフォローを飛ばし続けるのを抑制しています。
また、フォローリストから各ドメインにつき一つ代表を取り出して、先にトライし、失敗するサーバをあぶり出してから、残りを実行します。
先日のじぇいさんの大量フォローインポートがスムースに実行できたのは、この修正を先取りしておいたからです。
逆に言うと、これまでは、存在しないサーバにリクエストしていつまでも待ち続け、キューを長時間占有するジョブを大量に生み出して、それは酷いキュー詰まりを起こしていたということです。