Project

General

Profile

Actions

バグ #1437

closed

画像をホストしているオブジェクトストレージなどの画像を数個同時にリクエストすると、一切の画像取得がロード中で止まる

Added by toshi_a 初音 over 4 years ago. Updated over 4 years ago.

Status:
終了
Priority:
通常
Target version:
プラグイン名:
ブランチ:
クラッシュする:
No

Description

mikutterの画像取得は同時に4コネクションしか使わないようになっている。
このため、4コネクションが非常に遅いなどタイムアウトまで待たされることがあると、新たに画像をダウンロードすることができず、全ての画像がロードできなくなることがある。
専ら画像を取得するホストはせいぜいWorldの種類程度しかなかった時には特に問題にならなかったことだが、Mastodonのような分散SNSに対応したため、Worldの数と関係なくサーバ数ぶんホストが増えることになる。
不安定なサーバが出てきたときに、全てのサーバの画像がダウンロードできなくなるのは避けなければならない。

解決方法

コネクション数制限を、1ドメイン毎に4コネクションまでとする。4は根拠のない数字なので特に増やすことには問題はない。
とはいえ、現状の実装では接続数分Threadが作られてしまうため、今回のようなケースで大量のThreadが確保されると他の問題を誘発するかもしれない。
4コネクションでも平時は問題がなかったことから、上記の解決策を打って様子を見る。


再現手順

  • オブジェクトストレージなどを使っているMastodonサーバを用意する
  • オブジェクトストレージをクラッシュさせるなど、接続がタイムアウトまで止まるようにする

Related issues

Related to バグ #1440: メモリ消費が極端に増えることがある実装待ちtoshi_a 初音Actions
Actions #1

Updated by toshi_a 初音 over 4 years ago

  • Status changed from 実装待ち to 終了
Actions #2

Updated by toshi_a 初音 over 4 years ago

  • Target version changed from 4.1 to 4.0
Actions #3

Updated by toshi_a 初音 over 4 years ago

  • Related to バグ #1440: メモリ消費が極端に増えることがある added
Actions

Also available in: Atom PDF